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

Merge branch 'cwc' into 'master'

Cwc

See merge request chenweican/k-sdk!103
parents 604f4d05 57d22634
...@@ -17,6 +17,7 @@ ...@@ -17,6 +17,7 @@
#include "kk_product.h" #include "kk_product.h"
#include "kcloud_config.h" #include "kcloud_config.h"
#include "infra_sha256.h" #include "infra_sha256.h"
#include "kk_log.h"
#define BUFSIZE 1024 #define BUFSIZE 1024
#define PRODUCTSECRET "123456" #define PRODUCTSECRET "123456"
...@@ -82,20 +83,20 @@ char *kk_dictionary_order(char *deviceCode, char *productCode,char *randomId) ...@@ -82,20 +83,20 @@ char *kk_dictionary_order(char *deviceCode, char *productCode,char *randomId)
char str[3][16]={0}; char str[3][16]={0};
char temp[16]; char temp[16];
int i,l,len; int i,l,len;
char *signSource = NULL; char *signSource = NULL;
memcpy(&str[0],deviceCode,strlen(deviceCode)); memcpy(&str[0],deviceCode,strlen(deviceCode));
memcpy(&str[1],productCode,strlen(productCode)); memcpy(&str[1],productCode,strlen(productCode));
memcpy(&str[2],randomId,strlen(randomId)); memcpy(&str[2],randomId,strlen(randomId));
for (i=0;i<3;i++) for (i=0;i<3;i++)
{ {
for (l=0;l<16;l++) for (l=0;l<16;l++)
{ {
printf("%c",str[i][l]); INFO_PRINT("%c",str[i][l]);
} }
printf("\n"); INFO_PRINT("\n");
} }
//排序 //排序
printf("after order:\n"); INFO_PRINT("after order:\n");
int j,k; int j,k;
for( j=0;j<3;j++) for( j=0;j<3;j++)
for( k=j+1;k<3;k++) for( k=j+1;k<3;k++)
...@@ -107,17 +108,17 @@ char *kk_dictionary_order(char *deviceCode, char *productCode,char *randomId) ...@@ -107,17 +108,17 @@ char *kk_dictionary_order(char *deviceCode, char *productCode,char *randomId)
strcpy(str[k],temp); strcpy(str[k],temp);
} }
} }
for(i=0;i<3;i++)//输出 for(i=0;i<3;i++)//输出
printf("%s\n",str[i]); INFO_PRINT("%s\n",str[i]);
len = strlen(deviceCode) + strlen(productCode) + strlen(randomId) + 1; len = strlen(deviceCode) + strlen(productCode) + strlen(randomId) + 1;
signSource = malloc(len); signSource = malloc(len);
if (signSource == NULL) { if (signSource == NULL) {
return NULL; return NULL;
} }
memset(signSource, 0, len); memset(signSource, 0, len);
snprintf(signSource, len, "%s%s%s", str[0],str[1],str[2]); snprintf(signSource, len, "%s%s%s", str[0],str[1],str[2]);
printf("signSource %s\n",signSource); INFO_PRINT("signSource %s\n",signSource);
return signSource; return signSource;
} }
static const char * base64char = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; static const char * base64char = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
...@@ -161,17 +162,17 @@ int base64_encode( const unsigned char *bindata, char *base64, int binlength ) ...@@ -161,17 +162,17 @@ int base64_encode( const unsigned char *bindata, char *base64, int binlength )
} }
int arrayToStr(unsigned char *buf, unsigned int buflen, char *out) int arrayToStr(unsigned char *buf, unsigned int buflen, char *out)
{ {
char strBuf[65] = {0}; char strBuf[65] = {0};
char pbuf[32]; char pbuf[32];
int i; int i;
for(i = 0; i < buflen; i++) for(i = 0; i < buflen; i++)
{ {
sprintf(pbuf, "%02x", buf[i]); sprintf(pbuf, "%02x", buf[i]);
strncat(strBuf, pbuf, 2); strncat(strBuf, pbuf, 2);
} }
strncpy(out, strBuf, buflen * 2); strncpy(out, strBuf, buflen * 2);
printf("out = %s\n", out); INFO_PRINT("out = %s\n", out);
return buflen * 2; return buflen * 2;
} }
static char * kk_create_register_info() static char * kk_create_register_info()
...@@ -203,23 +204,23 @@ static char * kk_create_register_info() ...@@ -203,23 +204,23 @@ static char * kk_create_register_info()
arrayToStr(sign_hex,32,sign_hex_str); arrayToStr(sign_hex,32,sign_hex_str);
base64Out = malloc(128); base64Out = malloc(128);
if (base64Out == NULL) { if (base64Out == NULL) {
return NULL; return NULL;
} }
printf("[%s][%d]sign_hex:%s\n",__FUNCTION__,__LINE__,sign_hex_str); INFO_PRINT("[%s][%d]sign_hex:%s\n",__FUNCTION__,__LINE__,sign_hex_str);
//memset(base64Out, 0, 128); //memset(base64Out, 0, 128);
//base64_encode(sign_hex_str,base64Out,strlen(sign_hex_str)); //base64_encode(sign_hex_str,base64Out,strlen(sign_hex_str));
printf("[%s][%d]base64Out:%s\n",__FUNCTION__,__LINE__,base64Out); INFO_PRINT("[%s][%d]base64Out:%s\n",__FUNCTION__,__LINE__,base64Out);
cJSON_AddStringToObject(root, "sign",sign_hex_str); cJSON_AddStringToObject(root, "sign",sign_hex_str);
cJSON_AddStringToObject(root, "random",KK_CCU_RANDOM); cJSON_AddStringToObject(root, "random",KK_CCU_RANDOM);
free(signSource); free(signSource);
free(base64Out); free(base64Out);
out=cJSON_Print(root); out=cJSON_Print(root);
//cJSON_Minify(out); //cJSON_Minify(out);
cJSON_Delete(root); cJSON_Delete(root);
printf("--------------------->kk_create_register_info:%s\n",out); INFO_PRINT("--------------------->kk_create_register_info:%s\n",out);
return out; return out;
} }
char g_clientId[64] = {0}; char g_clientId[64] = {0};
static char * kk_create_get_jwt_info() static char * kk_create_get_jwt_info()
...@@ -247,133 +248,134 @@ static char * kk_create_get_jwt_info() ...@@ -247,133 +248,134 @@ static char * kk_create_get_jwt_info()
out=cJSON_Print(root); out=cJSON_Print(root);
//cJSON_Minify(out); //cJSON_Minify(out);
cJSON_Delete(root); cJSON_Delete(root);
printf("--------------------->kk_create_get_jwt_info:%s\n",out); INFO_PRINT("--------------------->kk_create_get_jwt_info:%s\n",out);
return out; return out;
} }
static int kk_send_register_info(int sockfd,const char * path,int type) static int kk_send_register_info(int sockfd,const char * path,int type)
{ {
char str1[1024], str2[1024],str[16] = {0}; char str1[1024], str2[1024],str[16] = {0};
char tmp[128] = {0}; char tmp[128] = {0};
int len = 0; int len = 0;
memset(str2, 0, sizeof(str2)); memset(str2, 0, sizeof(str2));
if(type == 0){ if(type == 0){
strcat(str2, kk_create_register_info()); strcat(str2, kk_create_register_info());
}else{ }else{
strcat(str2, kk_create_get_jwt_info()); strcat(str2, kk_create_get_jwt_info());
} }
len = strlen(str2); len = strlen(str2);
sprintf(str, "%d", len); sprintf(str, "%d", len);
memset(str1, 0, sizeof(str1)); memset(str1, 0, sizeof(str1));
memset(tmp, 0, sizeof(tmp)); memset(tmp, 0, sizeof(tmp));
sprintf(tmp, "POST %s HTTP/1.1\n", path); sprintf(tmp, "POST %s HTTP/1.1\n", path);
strcat(str1, tmp); strcat(str1, tmp);
memset(tmp, 0, sizeof(tmp)); memset(tmp, 0, sizeof(tmp));
sprintf(tmp, "Host: %s:%d\n",IPSTR, PORT); sprintf(tmp, "Host: %s:%d\n",IPSTR, PORT);
strcat(str1, tmp); strcat(str1, tmp);
strcat(str1, "Content-Type: application/json\n"); strcat(str1, "Content-Type: application/json\n");
strcat(str1, "Content-Length: "); strcat(str1, "Content-Length: ");
strcat(str1, str); strcat(str1, str);
strcat(str1, "\n\n"); strcat(str1, "\n\n");
//str2的值为post的数据 //str2的值为post的数据
strcat(str1, str2); strcat(str1, str2);
strcat(str1, "\r\n\r\n"); strcat(str1, "\r\n\r\n");
printf("%s\n",str1); INFO_PRINT("%s\n",str1);
return write(sockfd,str1,strlen(str1)); return write(sockfd,str1,strlen(str1));
} }
int kk_start_ccu_register(void) int kk_start_ccu_register(void)
{ {
int sockfd, ret, i, h; int sockfd, ret, i, h;
struct sockaddr_in servaddr; struct sockaddr_in servaddr;
char buf[1024] = {0}, buf2[1024] = {0}; char buf[1024] = {0}, buf2[1024] = {0};
fd_set t_set1; fd_set t_set1;
struct timeval tv; struct timeval tv;
int registerType = 0; int registerType = 0;
if ((sockfd = socket(AF_INET, SOCK_STREAM, 0)) < 0 ) { if ((sockfd = socket(AF_INET, SOCK_STREAM, 0)) < 0 ) {
printf("---socket error!\n"); INFO_PRINT("---socket error!\n");
return -1; return -1;
}; };
bzero(&servaddr, sizeof(servaddr)); bzero(&servaddr, sizeof(servaddr));
servaddr.sin_family = AF_INET; servaddr.sin_family = AF_INET;
servaddr.sin_port = htons(PORT); servaddr.sin_port = htons(PORT);
if (inet_pton(AF_INET, IPSTR, &servaddr.sin_addr) <= 0 ){
if (inet_pton(AF_INET, IPSTR, &servaddr.sin_addr) <= 0 ){ INFO_PRINT("--inet_pton error!\n");
printf("--inet_pton error!\n"); close(sockfd);
return -1; return -1;
}; };
if (connect(sockfd, (struct sockaddr *)&servaddr, sizeof(servaddr)) < 0){ if (connect(sockfd, (struct sockaddr *)&servaddr, sizeof(servaddr)) < 0){
printf("connect error!\n"); INFO_PRINT("connect error!\n");
return -1; close(sockfd);
} return -1;
printf("connect successful\n"); }
ret = kk_send_register_info(sockfd,"/deviceRegister/register",0); INFO_PRINT("connect successful\n");
if (ret < 0) { ret = kk_send_register_info(sockfd,"/deviceRegister/register",0);
printf("send fail\n"); if (ret < 0) {
close(sockfd); INFO_PRINT("send fail\n");
return -1; close(sockfd);
}else{ return -1;
printf("send success send %d bytes!\n\n", ret); }else{
} INFO_PRINT("send success send %d bytes!\n\n", ret);
registerType = 1; }
FD_ZERO(&t_set1); registerType = 1;
FD_SET(sockfd, &t_set1); FD_ZERO(&t_set1);
tv.tv_sec= 1; FD_SET(sockfd, &t_set1);
tv.tv_usec= 0; tv.tv_sec= 1;
h= 0; tv.tv_usec= 0;
while(1){ h= 0;
h = select(sockfd +1, &t_set1, NULL, NULL, &tv); while(1){
//if (h == 0) continue; h = select(sockfd +1, &t_set1, NULL, NULL, &tv);
if (h == -1) { //if (h == 0) continue;
close(sockfd); if (h == -1) {
return -1; close(sockfd);
}; return -1;
if ( FD_ISSET(sockfd, &t_set1) ){ };
memset(buf, 0, 1024); if ( FD_ISSET(sockfd, &t_set1) ){
memset(buf2, 0, 1024); memset(buf, 0, 1024);
i= read(sockfd, buf, 1024); memset(buf2, 0, 1024);
if (i==0){ i= read(sockfd, buf, 1024);
close(sockfd); if (i==0){
return -1; close(sockfd);
} return -1;
printf("\n get %s\n",buf); }
if(registerType == 1){//get deviceSecret INFO_PRINT("\n get %s\n",buf);
char* deviceSecret = strstr(buf,"deviceSecret"); if(registerType == 1){//get deviceSecret
if(deviceSecret != NULL){ char* deviceSecret = strstr(buf,"deviceSecret");
char* start = strchr(buf,'{'); if(deviceSecret != NULL){
char* end = strrchr(buf,'}'); char* start = strchr(buf,'{');
strncpy(buf2,start,end-start+1); char* end = strrchr(buf,'}');
printf("[%s][%d]buf2:%s\n",__FUNCTION__,__LINE__,buf2); strncpy(buf2,start,end-start+1);
ret = kk_parse_deviceSecret(buf2); INFO_PRINT("[%s][%d]buf2:%s\n",__FUNCTION__,__LINE__,buf2);
if(ret == 0){ ret = kk_parse_deviceSecret(buf2);
ret = kk_send_register_info(sockfd,"/auth/generateJwt",1); if(ret == 0){
if (ret < 0) { ret = kk_send_register_info(sockfd,"/auth/generateJwt",1);
printf("send fail'\n"); if (ret < 0) {
close(sockfd); INFO_PRINT("send fail'\n");
return -1; close(sockfd);
}else{ return -1;
printf("send success send %d bytes!\n\n", ret); }else{
} printf("send success send %d bytes!\n\n", ret);
registerType = 2; }
} registerType = 2;
} }
}else if(registerType == 2){ }
char* jwt = strstr(buf,"jwt"); }else if(registerType == 2){
if(jwt != NULL){ char* jwt = strstr(buf,"jwt");
char* start = strchr(buf,'{'); if(jwt != NULL){
char* end = strrchr(buf,'}'); char* start = strchr(buf,'{');
if(start != NULL && end != NULL){ char* end = strrchr(buf,'}');
strncpy(buf2,start,end-start+1); if(start != NULL && end != NULL){
ret = kk_parse_token(buf2); strncpy(buf2,start,end-start+1);
if(ret == 0){ ret = kk_parse_token(buf2);
close(sockfd); if(ret == 0){
return 0; close(sockfd);
} return 0;
} }
} }
} }
} }
} }
close(sockfd); }
return -1; close(sockfd);
return -1;
} }
\ No newline at end of file
...@@ -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
{
"schema": "https://iot-ap.ikonke.com/model/product_1016.json",
"productType": "IRRC",
"profile": {
"heartbeat": "3000",
"productCode": "1016",
"productName": "红外遥控器"
},
"services": [{
"identifier": "set",
"name": "set",
"required": true,
"callType": "async",
"desc": "属性设置",
"method": "thing.service.property.set",
"inputData": [],
"outputData": []
}, {
"identifier": "get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取",
"method": "thing.service.property.get",
"inputData": [],
"outputData": []
}, {
"identifier": "sendCode",
"name": "发送红外码",
"required": false,
"callType": "async",
"method": "thing.service.sendCode",
"inputData": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}],
"outputData": []
}, {
"identifier": "learnCode",
"name": "学习红外码",
"required": false,
"callType": "async",
"method": "thing.service.learnCode",
"inputData": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}],
"outputData": []
}, {
"identifier": "saveCode",
"name": "保存红外码",
"required": false,
"callType": "async",
"method": "thing.service.saveCode",
"inputData": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}],
"outputData": []
}, {
"identifier": "saveRC",
"name": "保存遥控器",
"required": false,
"callType": "async",
"method": "thing.service.saveRC",
"inputData": [{
"identifier": "rcs",
"name": "遥控器数组",
"dataType": {
"type": "array",
"specs": {
"size": "128",
"item": {
"type": "struct",
"specs": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "ButtonName",
"name": "按键名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}]
}
}
}
}],
"outputData": []
}, {
"identifier": "getRC",
"name": "获取遥控器",
"required": false,
"callType": "sync",
"method": "thing.service.getRC",
"inputData": [],
"outputData": [{
"identifier": "rcs",
"name": "遥控器数组",
"dataType": {
"type": "array",
"specs": {
"size": "128",
"item": {
"type": "struct",
"specs": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "ButtonName",
"name": "按键名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "ButtonIcon",
"name": "按键图标",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "ButtonStatus",
"name": "按键图标",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}]
}
}
}
}]
}, {
"identifier": "getBindCodeLib",
"name": "获取绑定的码库",
"required": false,
"callType": "sync",
"method": "thing.service.getBindCodeLib",
"inputData": [],
"outputData": [{
"identifier": "codeLibs",
"name": "码库数组",
"dataType": {
"type": "array",
"specs": {
"size": "128",
"item": {
"type": "struct",
"specs": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "codeLibType",
"name": "码库类型",
"dataType": {
"type": "enum",
"specs": {
"0": "无码库",
"1": "手动学习码库",
"2": "云端码库",
"3": "私有码库"
}
}
}, {
"identifier": "CodeLibName",
"name": "码库名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceBrand",
"name": "设备设备品牌",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceModel",
"name": "设备型号",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "pCode",
"name": "匹配码",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}]
}
}
}
}]
}, {
"identifier": "getCodeLibButtons",
"name": "获取码库下的遥控器",
"required": false,
"callType": "sync",
"method": "thing.service.getCodeLibButtons",
"inputData": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}],
"outputData": [{
"identifier": "rcs",
"name": "遥控器数组",
"dataType": {
"type": "array",
"specs": {
"size": "128",
"item": {
"type": "struct",
"specs": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "ButtonName",
"name": "按键名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "ButtonIcon",
"name": "按键图标",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "ButtonStatus",
"name": "按键图标",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}]
}
}
}
}]
}, {
"identifier": "getLocalCodeLibs",
"name": "获取本地私有的码库",
"required": false,
"callType": "sync",
"method": "thing.service.getLocalCodeLibs",
"inputData": [{
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}],
"outputData": [{
"identifier": "codeLibs",
"name": "码库数组",
"dataType": {
"type": "array",
"specs": {
"size": "128",
"item": {
"type": "struct",
"specs": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "codeLibType",
"name": "码库类型",
"dataType": {
"type": "enum",
"specs": {
"0": "无码库",
"1": "手动学习码库",
"2": "云端码库",
"3": "私有码库"
}
}
}, {
"identifier": "CodeLibName",
"name": "码库名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceBrand",
"name": "设备设备品牌",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceModel",
"name": "设备型号",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "pCode",
"name": "匹配码",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}]
}
}
}
}]
}, {
"identifier": "saveCodeLib",
"name": "保存本地私有的码库",
"required": false,
"callType": "sync",
"method": "thing.service.saveCodeLib",
"inputData": [{
"identifier": "codeLibType",
"name": "码库类型",
"dataType": {
"type": "enum",
"specs": {
"0": "无码库",
"1": "手动学习码库",
"2": "云端码库",
"3": "私有码库"
}
}
}, {
"identifier": "CodeLibName",
"name": "码库名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceBrand",
"name": "设备设备品牌",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceModel",
"name": "设备型号",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "pCode",
"name": "匹配码",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}],
"outputData": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}]
}, {
"identifier": "deleteCodeLib",
"name": "删除本地私有的码库",
"required": false,
"callType": "sync",
"method": "thing.service.deleteCodeLib",
"inputData": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}],
"outputData": []
}, {
"identifier": "matchCodeLib",
"name": "匹配码库",
"required": false,
"callType": "sync",
"method": "thing.service.matchCodeLib",
"inputData": [{
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}],
"outputData": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "codeLibType",
"name": "码库类型",
"dataType": {
"type": "enum",
"specs": {
"0": "无码库",
"1": "手动学习码库",
"2": "云端码库",
"3": "私有码库"
}
}
}, {
"identifier": "CodeLibName",
"name": "码库名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceBrand",
"name": "设备设备品牌",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceModel",
"name": "设备型号",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "pCode",
"name": "匹配码",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}]
}, {
"identifier": "downloadLibCode",
"name": "下载红外码库到设备",
"required": false,
"callType": "sync",
"method": "thing.service.downloadLibCode",
"inputData": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "codeLibType",
"name": "码库类型",
"dataType": {
"type": "enum",
"specs": {
"0": "无码库",
"1": "手动学习码库",
"2": "云端码库",
"3": "私有码库"
}
}
}, {
"identifier": "CodeLibName",
"name": "码库名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceBrand",
"name": "设备设备品牌",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceModel",
"name": "设备型号",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "pCode",
"name": "匹配码",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}],
"outputData": []
}, {
"identifier": "testLibCode",
"name": "测试红外码库",
"required": false,
"callType": "sync",
"method": "thing.service.testLibCode",
"inputData": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}],
"outputData": []
}, {
"identifier": "resetBindCodeLib",
"name": "重置红外码库",
"required": false,
"callType": "sync",
"method": "thing.service.resetBindCodeLib",
"inputData": [],
"outputData": []
}],
"properties": [{
"identifier": "ButtonId",
"name": "按键id",
"accessMode": "r",
"required": true,
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "ButtonName",
"name": "按键名字",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "ButtonIcon",
"name": "按键图标",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "ButtonStatus",
"name": "按键学习状态",
"accessMode": "rw",
"required": false,
"dataType": {
"type": "enum",
"specs": {
"0": "未学习",
"1": "已学习"
}
}
}, {
"identifier": "CodeLibId",
"name": "码库id",
"accessMode": "r",
"required": true,
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "codeLibType",
"name": "码库类型",
"accessMode": "rw",
"required": false,
"dataType": {
"type": "enum",
"specs": {
"0": "无码库",
"1": "手动学习码库",
"2": "云端码库",
"3": "私有码库"
}
}
}, {
"identifier": "CodeLibName",
"name": "码库名字",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceType",
"name": "设备类型",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceBrand",
"name": "设备设备品牌",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceModel",
"name": "设备型号",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "pCode",
"name": "匹配码",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}],
"events": [{
"identifier": "post",
"name": "post",
"type": "info",
"required": true,
"desc": "属性上报",
"method": "thing.event.property.post",
"outputData": []
}, {
"identifier": "LearnCodeNotify",
"name": "学习码库通知消息",
"type": "info",
"required": true,
"method": "thing.event.LearnCodeNotify.post",
"outputData": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}]
}, {
"identifier": "DownloadLibCodeNotify",
"name": "下载码库通知消息",
"type": "info",
"required": true,
"method": "thing.event.DownloadLibCodeNotify.post",
"outputData": [{
"identifier": "Process",
"name": "码库下载进度",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "100"
}
}
}]
}]
}
\ No newline at end of file
{
"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
{
"schema": "https://iot-ap.ikonke.com/model/product_1030.json",
"productType": "lock",
"profile": {
"heartbeat": "3000",
"productCode": "1030",
"productName": "B1门锁",
"sleepTime": "30000"
},
"services": [{
"identifier": "set",
"name": "set",
"required": true,
"callType": "async",
"desc": "属性设置",
"method": "thing.service.property.set",
"inputData": [{
"identifier": "Volume",
"name": "门锁音量",
"dataType": {
"type": "enum",
"specs": {
"0": "静音",
"1": "低音",
"2": "中音",
"3": "高音"
}
}
}, {
"identifier": "Language",
"name": "门锁语言",
"dataType": {
"type": "enum",
"specs": {
"0": "中文",
"1": "英文"
}
}
}],
"outputData": []
}, {
"identifier": "get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取",
"method": "thing.service.property.get",
"inputData": [],
"outputData": []
}],
"properties": [{
"identifier": "LockState",
"name": "门锁状态",
"accessMode": "r",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}, {
"identifier": "BackLockState",
"name": "门反锁状态",
"accessMode": "r",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"accessMode": "r",
"required": false,
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
}
}, {
"identifier": "Volume",
"name": "门锁音量",
"accessMode": "rw",
"required": false,
"dataType": {
"type": "enum",
"specs": {
"0": "静音",
"1": "低音",
"2": "中音",
"3": "高音"
}
}
}, {
"identifier": "Language",
"name": "门锁语言",
"accessMode": "rw",
"required": false,
"dataType": {
"type": "enum",
"specs": {
"0": "中文",
"1": "英文"
}
}
}, {
"identifier": "LockKeys",
"name": "门锁钥匙",
"accessMode": "rw",
"desc": "门锁钥匙。",
"required": false,
"dataType": {
"type": "array",
"specs": {
"size": "128",
"item": {
"type": "struct",
"specs": [{
"identifier": "KeyID",
"name": "钥匙ID",
"dataType": {
"type": "text",
"specs": {
"length": "10"
}
}
}, {
"identifier": "KeyType",
"name": "开锁方式",
"dataType": {
"type": "enum",
"specs": {
"1": "指纹",
"2": "密码",
"3": "卡",
"4": "机械钥匙"
}
}
}, {
"identifier": "KeyRole",
"name": "用户权限",
"dataType": {
"type": "enum",
"specs": {
"1": "普通用户",
"2": "管理员",
"3": "劫持用户"
}
}
}, {
"identifier": "IsValid",
"name": "是否有效",
"dataType": {
"type": "enum",
"specs": {
"0": "无效",
"1": "有效"
}
}
}, {
"identifier": "KeyName",
"name": "钥匙昵称",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "KeyEffectiveTime",
"name": "生效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
}, {
"identifier": "KeyExpiryTime",
"name": "失效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
}]
}
}
}
}],
"events": [{
"identifier": "post",
"name": "post",
"type": "info",
"required": true,
"desc": "属性上报",
"method": "thing.event.property.post",
"outputData": [{
"identifier": "LockState",
"name": "门锁状态",
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
}
}, {
"identifier": "Volume",
"name": "门锁音量",
"dataType": {
"type": "enum",
"specs": {
"0": "静音",
"1": "低音",
"2": "中音",
"3": "高音"
}
}
}, {
"identifier": "Language",
"name": "门锁语言",
"dataType": {
"type": "enum",
"specs": {
"0": "中文",
"1": "英文"
}
}
}]
}, {
"identifier": "LockOpenNotification",
"name": "开门通知",
"type": "info",
"required": true,
"method": "thing.event.LockOpenNotification.post",
"outputData": [{
"identifier": "KeyID",
"name": "钥匙ID",
"dataType": {
"type": "text",
"specs": {
"length": "10"
}
}
}, {
"identifier": "KeyType",
"name": "开锁方式",
"dataType": {
"type": "enum",
"specs": {
"1": "指纹",
"2": "密码",
"3": "卡",
"4": "机械钥匙"
}
}
}, {
"identifier": "KeyRole",
"name": "用户权限",
"dataType": {
"type": "enum",
"specs": {
"1": "普通用户",
"2": "管理员",
"3": "劫持用户"
}
}
}]
}, {
"identifier": "LockNotification",
"name": "上锁通知",
"type": "info",
"required": true,
"method": "thing.event.LockNotification.post",
"outputData": []
}, {
"identifier": "BackLockNotification",
"name": "反锁通知",
"type": "info",
"required": true,
"method": "thing.event.BackLockNotification.post",
"outputData": []
}, {
"identifier": "BackLockOpenNotification",
"name": "反锁解除通知",
"type": "info",
"required": true,
"method": "thing.event.BackLockOpenNotification.post",
"outputData": []
}, {
"identifier": "KeyInformationNotification",
"name": "钥匙信息上报",
"type": "info",
"required": true,
"method": "thing.event.KeyInformationNotification.post",
"outputData": [{
"identifier": "LockKeys",
"name": "门锁钥匙",
"dataType": {
"type": "array",
"specs": {
"size": "128",
"item": {
"type": "struct",
"specs": [{
"identifier": "KeyID",
"name": "钥匙ID",
"dataType": {
"type": "text",
"specs": {
"length": "10"
}
}
}, {
"identifier": "KeyType",
"name": "开锁方式",
"dataType": {
"type": "enum",
"specs": {
"1": "指纹",
"2": "密码",
"3": "卡",
"4": "机械钥匙"
}
}
}, {
"identifier": "KeyRole",
"name": "用户权限",
"dataType": {
"type": "enum",
"specs": {
"1": "普通用户",
"2": "管理员",
"3": "劫持用户"
}
}
}, {
"identifier": "IsValid",
"name": "是否有效",
"dataType": {
"type": "bool",
"specs": {
"0": "无效",
"1": "有效"
}
}
}, {
"identifier": "KeyName",
"name": "钥匙昵称",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "KeyEffectiveTime",
"name": "生效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
}, {
"identifier": "KeyExpiryTime",
"name": "失效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
}]
}
}
}
}]
}, {
"identifier": "KeyAddNotification",
"name": "添加钥匙通知",
"type": "info",
"required": true,
"method": "thing.event.KeyAddNotification.post",
"outputData": [{
"identifier": "KeyID",
"name": "钥匙ID",
"dataType": {
"type": "text",
"specs": {
"length": "10"
}
}
}, {
"identifier": "KeyType",
"name": "开锁方式",
"dataType": {
"type": "enum",
"specs": {
"1": "指纹",
"2": "密码",
"3": "卡",
"4": "机械钥匙"
}
}
}, {
"identifier": "KeyRole",
"name": "用户权限",
"dataType": {
"type": "enum",
"specs": {
"1": "普通用户",
"2": "管理员",
"3": "劫持用户"
}
}
}, {
"identifier": "IsValid",
"name": "是否有效",
"dataType": {
"type": "bool",
"specs": {
"0": "无效",
"1": "有效"
}
}
}, {
"identifier": "KeyName",
"name": "钥匙昵称",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "KeyEffectiveTime",
"name": "生效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
}, {
"identifier": "KeyExpiryTime",
"name": "失效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
}]
}, {
"identifier": "KeyModifyNotification",
"name": "修改钥匙通知",
"type": "info",
"required": true,
"method": "thing.event.KeyModifyNotification.post",
"outputData": [{
"identifier": "KeyID",
"name": "钥匙ID",
"dataType": {
"type": "text",
"specs": {
"length": "10"
}
}
}, {
"identifier": "KeyType",
"name": "开锁方式",
"dataType": {
"type": "enum",
"specs": {
"1": "指纹",
"2": "密码",
"3": "卡",
"4": "机械钥匙"
}
}
}, {
"identifier": "KeyRole",
"name": "用户权限",
"dataType": {
"type": "enum",
"specs": {
"1": "普通用户",
"2": "管理员",
"3": "劫持用户"
}
}
}, {
"identifier": "IsValid",
"name": "是否有效",
"dataType": {
"type": "bool",
"specs": {
"0": "无效",
"1": "有效"
}
}
}, {
"identifier": "KeyName",
"name": "钥匙昵称",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "KeyEffectiveTime",
"name": "生效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
}, {
"identifier": "KeyExpiryTime",
"name": "失效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
}]
}, {
"identifier": "KeyDeletedNotification",
"name": "删除钥匙通知",
"type": "info",
"required": true,
"method": "thing.event.KeyDeletedNotification.post",
"outputData": [{
"identifier": "KeyID",
"name": "钥匙ID",
"dataType": {
"type": "text",
"specs": {
"length": "10"
}
}
}, {
"identifier": "KeyType",
"name": "开锁方式",
"dataType": {
"type": "enum",
"specs": {
"1": "指纹",
"2": "密码",
"3": "卡",
"4": "机械钥匙"
}
}
}, {
"identifier": "KeyRole",
"name": "用户权限",
"dataType": {
"type": "enum",
"specs": {
"1": "普通用户",
"2": "管理员",
"3": "劫持用户"
}
}
}]
}, {
"identifier": "UnlockedAlarm",
"name": "门未锁好报警",
"type": "alert",
"required": true,
"method": "thing.event.UnlockedAlarm.post",
"outputData": []
},{
"identifier": "MultipleOpenLockFailedAlarm",
"name": "多次开锁失败",
"type": "alert",
"required": true,
"method": "thing.event.MultipleOpenLockFailedAlarm.post",
"outputData": []
}, {
"identifier": "HijackingAlarm",
"name": "劫持报警",
"type": "alert",
"required": true,
"method": "thing.event.HijackingAlarm.post",
"outputData": [{
"identifier": "KeyID",
"name": "钥匙ID",
"dataType": {
"type": "text",
"specs": {
"length": "10"
}
}
}, {
"identifier": "KeyType",
"name": "开锁方式",
"dataType": {
"type": "enum",
"specs": {
"1": "指纹",
"2": "密码",
"3": "卡",
"4": "机械钥匙"
}
}
}]
}, {
"identifier": "BatteryAlarm",
"name": "低电量报警",
"type": "alert",
"required": true,
"method": "thing.event.BatteryAlarm.post",
"outputData": [{
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
}
}]
}, {
"identifier": "TamperAlarm",
"name": "防撬报警",
"type": "alert",
"required": true,
"method": "thing.event.TamperAlarm.post",
"outputData": []
}, {
"identifier": "Error",
"name": "故障上报",
"type": "error",
"required": true,
"method": "thing.event.Error.post",
"outputData": [{
"identifier": "ErrorCode",
"name": "故障代码",
"dataType": {
"type": "enum",
"specs": {
"0": "正常"
}
}
}]
}]
}
\ No newline at end of file
{
"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
{
"schema": "https://iot-ap.ikonke.com/model/product_1041.json",
"productType": "lock",
"profile": {
"heartbeat": "3000",
"productCode": "1041",
"productName": "悦目门锁",
"sleepTime": "30000"
},
"services": [{
"identifier": "set",
"name": "set",
"required": true,
"callType": "async",
"desc": "属性设置",
"method": "thing.service.property.set",
"inputData": [{
"identifier": "Volume",
"name": "门锁音量",
"dataType": {
"type": "enum",
"specs": {
"0": "静音",
"1": "低音",
"2": "中音",
"3": "高音"
}
}
}, {
"identifier": "Language",
"name": "门锁语言",
"dataType": {
"type": "enum",
"specs": {
"0": "中文",
"1": "英文"
}
}
}],
"outputData": []
}, {
"identifier": "get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取",
"method": "thing.service.property.get",
"inputData": ["LockState", "BackLockState", "Battery", "Volume", "Language"],
"outputData": [{
"identifier": "LockState",
"name": "门锁状态",
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}, {
"identifier": "BackLockState",
"name": "门锁状态",
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
}
}, {
"identifier": "Volume",
"name": "门锁音量",
"dataType": {
"type": "enum",
"specs": {
"0": "静音",
"1": "低音",
"2": "中音",
"3": "高音"
}
}
}, {
"identifier": "Language",
"name": "门锁语言",
"dataType": {
"type": "enum",
"specs": {
"0": "中文",
"1": "英文"
}
}
}]
}, {
"identifier": "openLock",
"name": "远程开锁",
"required": false,
"callType": "async",
"method": "thing.service.openLock",
"inputData": [{
"identifier": "Password",
"name": "密码",
"dataType": {
"type": "text",
"specs": {
"length": "126"
}
}
}],
"outputData": []
}, {
"identifier": "getKeyList",
"name": "获取钥匙列表",
"required": true,
"callType": "async",
"method": "thing.service.getKeyList",
"inputData": [{
"identifier": "KeyType",
"name": "开锁方式",
"dataType": {
"type": "enum",
"specs": {
"0": "全部",
"1": "指纹",
"2": "密码",
"3": "卡",
"4": "机械钥匙"
}
}
}],
"outputData": []
}, {
"identifier": "addKey",
"name": "添加钥匙",
"required": true,
"callType": "async",
"method": "thing.service.AddKey",
"inputData": [{
"identifier": "KeyType",
"name": "开锁方式",
"dataType": {
"type": "enum",
"specs": {
"1": "密码",
"2": "指纹",
"3": "卡",
"4": "机械钥匙"
}
}
}, {
"identifier": "KeyRole",
"name": "用户权限",
"dataType": {
"type": "enum",
"specs": {
"1": "普通用户",
"2": "管理员",
"3": "劫持用户"
}
}
}, {
"identifier": "IsValid",
"name": "是否有效",
"dataType": {
"type": "bool",
"specs": {
"0": "无效",
"1": "有效"
}
}
}, {
"identifier": "KeyName",
"name": "钥匙昵称",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "KeyEffectiveTime",
"name": "生效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
}, {
"identifier": "KeyExpiryTime",
"name": "失效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
},{
"identifier": "Password",
"name": "密码",
"dataType": {
"type": "text",
"specs": {
"length": "126"
}
}
}],
"outputData": []
}, {
"identifier": "ModifyKey",
"name": "配置钥匙权限",
"required": false,
"callType": "async",
"method": "thing.service.ModifyKey",
"inputData": [{
"identifier": "KeyID",
"name": "钥匙ID",
"dataType": {
"type": "text",
"specs": {
"length": "10"
}
}
}, {
"identifier": "KeyType",
"name": "开锁方式",
"dataType": {
"type": "enum",
"specs": {
"1": "指纹",
"2": "密码",
"3": "卡",
"4": "机械钥匙"
}
}
}, {
"identifier": "KeyRole",
"name": "用户权限",
"dataType": {
"type": "enum",
"specs": {
"1": "普通用户",
"2": "管理员",
"3": "劫持用户"
}
}
}, {
"identifier": "IsValid",
"name": "是否有效",
"dataType": {
"type": "bool",
"specs": {
"0": "无效",
"1": "有效"
}
}
}, {
"identifier": "KeyName",
"name": "钥匙昵称",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "KeyEffectiveTime",
"name": "生效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
}, {
"identifier": "KeyExpiryTime",
"name": "失效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
}],
"outputData": []
}, {
"identifier": "DeleteKey",
"name": "删除钥匙",
"required": true,
"callType": "async",
"method": "thing.service.DeleteKey",
"inputData": [{
"identifier": "KeyID",
"name": "钥匙ID",
"dataType": {
"type": "text",
"specs": {
"length": "10"
}
}
}, {
"identifier": "KeyType",
"name": "开锁方式",
"dataType": {
"type": "enum",
"specs": {
"1": "指纹",
"2": "密码",
"3": "卡",
"4": "机械钥匙"
}
}
}, {
"identifier": "KeyRole",
"name": "用户权限",
"dataType": {
"type": "enum",
"specs": {
"1": "普通用户",
"2": "管理员",
"3": "劫持用户"
}
}
}],
"outputData": []
}],
"properties": [{
"identifier": "LockState",
"name": "门锁状态",
"accessMode": "r",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}, {
"identifier": "BackLockState",
"name": "门反锁状态",
"accessMode": "r",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"accessMode": "r",
"required": false,
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
}
}, {
"identifier": "Volume",
"name": "门锁音量",
"accessMode": "rw",
"required": false,
"dataType": {
"type": "enum",
"specs": {
"0": "静音",
"1": "低音",
"2": "中音",
"3": "高音"
}
}
}, {
"identifier": "Language",
"name": "门锁语言",
"accessMode": "rw",
"required": false,
"dataType": {
"type": "enum",
"specs": {
"0": "中文",
"1": "英文"
}
}
}, {
"identifier": "LockKeys",
"name": "门锁钥匙",
"accessMode": "rw",
"desc": "门锁钥匙。",
"required": false,
"dataType": {
"type": "array",
"specs": {
"size": "128",
"item": {
"type": "struct",
"specs": [{
"identifier": "KeyID",
"name": "钥匙ID",
"dataType": {
"type": "text",
"specs": {
"length": "10"
}
}
}, {
"identifier": "KeyType",
"name": "开锁方式",
"dataType": {
"type": "enum",
"specs": {
"1": "指纹",
"2": "密码",
"3": "卡",
"4": "机械钥匙"
}
}
}, {
"identifier": "KeyRole",
"name": "用户权限",
"dataType": {
"type": "enum",
"specs": {
"1": "普通用户",
"2": "管理员",
"3": "劫持用户"
}
}
}, {
"identifier": "IsValid",
"name": "是否有效",
"dataType": {
"type": "enum",
"specs": {
"0": "无效",
"1": "有效"
}
}
}, {
"identifier": "KeyName",
"name": "钥匙昵称",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "KeyEffectiveTime",
"name": "生效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
}, {
"identifier": "KeyExpiryTime",
"name": "失效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
}]
}
}
}
}],
"events": [{
"identifier": "post",
"name": "post",
"type": "info",
"required": true,
"desc": "属性上报",
"method": "thing.event.property.post",
"outputData": [{
"identifier": "LockState",
"name": "门锁状态",
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
}
}, {
"identifier": "Volume",
"name": "门锁音量",
"dataType": {
"type": "enum",
"specs": {
"0": "静音",
"1": "低音",
"2": "中音",
"3": "高音"
}
}
}, {
"identifier": "Language",
"name": "门锁语言",
"dataType": {
"type": "enum",
"specs": {
"0": "中文",
"1": "英文"
}
}
}]
}, {
"identifier": "LockOpenNotification",
"name": "开门通知",
"type": "info",
"required": true,
"method": "thing.event.LockOpenNotification.post",
"outputData": [{
"identifier": "KeyID",
"name": "钥匙ID",
"dataType": {
"type": "text",
"specs": {
"length": "10"
}
}
}, {
"identifier": "KeyType",
"name": "开锁方式",
"dataType": {
"type": "enum",
"specs": {
"1": "指纹",
"2": "密码",
"3": "卡",
"4": "机械钥匙"
}
}
}, {
"identifier": "KeyRole",
"name": "用户权限",
"dataType": {
"type": "enum",
"specs": {
"1": "普通用户",
"2": "管理员",
"3": "劫持用户"
}
}
}]
}, {
"identifier": "LockNotification",
"name": "上锁通知",
"type": "info",
"required": true,
"method": "thing.event.LockNotification.post",
"outputData": []
}, {
"identifier": "BackLockNotification",
"name": "反锁通知",
"type": "info",
"required": true,
"method": "thing.event.BackLockNotification.post",
"outputData": []
}, {
"identifier": "BackLockOpenNotification",
"name": "反锁解除通知",
"type": "info",
"required": true,
"method": "thing.event.BackLockOpenNotification.post",
"outputData": []
}, {
"identifier": "KeyInformationNotification",
"name": "钥匙信息上报",
"type": "info",
"required": true,
"method": "thing.event.KeyInformationNotification.post",
"outputData": [{
"identifier": "LockKeys",
"name": "门锁钥匙",
"dataType": {
"type": "array",
"specs": {
"size": "128",
"item": {
"type": "struct",
"specs": [{
"identifier": "KeyID",
"name": "钥匙ID",
"dataType": {
"type": "text",
"specs": {
"length": "10"
}
}
}, {
"identifier": "KeyType",
"name": "开锁方式",
"dataType": {
"type": "enum",
"specs": {
"1": "指纹",
"2": "密码",
"3": "卡",
"4": "机械钥匙"
}
}
}, {
"identifier": "KeyRole",
"name": "用户权限",
"dataType": {
"type": "enum",
"specs": {
"1": "普通用户",
"2": "管理员",
"3": "劫持用户"
}
}
}, {
"identifier": "IsValid",
"name": "是否有效",
"dataType": {
"type": "bool",
"specs": {
"0": "无效",
"1": "有效"
}
}
}, {
"identifier": "KeyName",
"name": "钥匙昵称",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "KeyEffectiveTime",
"name": "生效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
}, {
"identifier": "KeyExpiryTime",
"name": "失效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
}]
}
}
}
}]
}, {
"identifier": "KeyAddNotification",
"name": "添加钥匙通知",
"type": "info",
"required": true,
"method": "thing.event.KeyAddNotification.post",
"outputData": [{
"identifier": "KeyID",
"name": "钥匙ID",
"dataType": {
"type": "text",
"specs": {
"length": "10"
}
}
}, {
"identifier": "KeyType",
"name": "开锁方式",
"dataType": {
"type": "enum",
"specs": {
"1": "指纹",
"2": "密码",
"3": "卡",
"4": "机械钥匙"
}
}
}, {
"identifier": "KeyRole",
"name": "用户权限",
"dataType": {
"type": "enum",
"specs": {
"1": "普通用户",
"2": "管理员",
"3": "劫持用户"
}
}
}, {
"identifier": "IsValid",
"name": "是否有效",
"dataType": {
"type": "bool",
"specs": {
"0": "无效",
"1": "有效"
}
}
}, {
"identifier": "KeyName",
"name": "钥匙昵称",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "KeyEffectiveTime",
"name": "生效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
}, {
"identifier": "KeyExpiryTime",
"name": "失效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
}]
}, {
"identifier": "KeyModifyNotification",
"name": "修改钥匙通知",
"type": "info",
"required": true,
"method": "thing.event.KeyModifyNotification.post",
"outputData": [{
"identifier": "KeyID",
"name": "钥匙ID",
"dataType": {
"type": "text",
"specs": {
"length": "10"
}
}
}, {
"identifier": "KeyType",
"name": "开锁方式",
"dataType": {
"type": "enum",
"specs": {
"1": "指纹",
"2": "密码",
"3": "卡",
"4": "机械钥匙"
}
}
}, {
"identifier": "KeyRole",
"name": "用户权限",
"dataType": {
"type": "enum",
"specs": {
"1": "普通用户",
"2": "管理员",
"3": "劫持用户"
}
}
}, {
"identifier": "IsValid",
"name": "是否有效",
"dataType": {
"type": "bool",
"specs": {
"0": "无效",
"1": "有效"
}
}
}, {
"identifier": "KeyName",
"name": "钥匙昵称",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "KeyEffectiveTime",
"name": "生效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
}, {
"identifier": "KeyExpiryTime",
"name": "失效时间",
"dataType": {
"type": "int",
"specs": {
"min": "1577808001",
"max": "32472115201"
}
}
}]
}, {
"identifier": "KeyDeletedNotification",
"name": "删除钥匙通知",
"type": "info",
"required": true,
"method": "thing.event.KeyDeletedNotification.post",
"outputData": [{
"identifier": "KeyID",
"name": "钥匙ID",
"dataType": {
"type": "text",
"specs": {
"length": "10"
}
}
}, {
"identifier": "KeyType",
"name": "开锁方式",
"dataType": {
"type": "enum",
"specs": {
"1": "指纹",
"2": "密码",
"3": "卡",
"4": "机械钥匙"
}
}
}, {
"identifier": "KeyRole",
"name": "用户权限",
"dataType": {
"type": "enum",
"specs": {
"1": "普通用户",
"2": "管理员",
"3": "劫持用户"
}
}
}]
}, {
"identifier": "UnlockedAlarm",
"name": "门未锁好报警",
"type": "alert",
"required": true,
"method": "thing.event.UnlockedAlarm.post",
"outputData": []
},{
"identifier": "MultipleOpenLockFailedAlarm",
"name": "多次开锁失败",
"type": "alert",
"required": true,
"method": "thing.event.MultipleOpenLockFailedAlarm.post",
"outputData": []
}, {
"identifier": "HijackingAlarm",
"name": "劫持报警",
"type": "alert",
"required": true,
"method": "thing.event.HijackingAlarm.post",
"outputData": [{
"identifier": "KeyID",
"name": "钥匙ID",
"dataType": {
"type": "text",
"specs": {
"length": "10"
}
}
}, {
"identifier": "KeyType",
"name": "开锁方式",
"dataType": {
"type": "enum",
"specs": {
"1": "指纹",
"2": "密码",
"3": "卡",
"4": "机械钥匙"
}
}
}]
}, {
"identifier": "BatteryAlarm",
"name": "低电量报警",
"type": "alert",
"required": true,
"method": "thing.event.BatteryAlarm.post",
"outputData": [{
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
}
}]
}, {
"identifier": "TamperAlarm",
"name": "防撬报警",
"type": "alert",
"required": true,
"method": "thing.event.TamperAlarm.post",
"outputData": []
}, {
"identifier": "Error",
"name": "故障上报",
"type": "error",
"required": true,
"method": "thing.event.Error.post",
"outputData": [{
"identifier": "ErrorCode",
"name": "故障代码",
"dataType": {
"type": "enum",
"specs": {
"0": "正常"
}
}
}]
}]
}
\ No newline at end of file
{
"schema": "https://iot-ap.ikonke.com/model/product_1043.json",
"productType": "IRRC",
"profile": {
"heartbeat": "3000",
"productCode": "1043",
"productName": "二代红外遥控器"
},
"services": [{
"identifier": "set",
"name": "set",
"required": true,
"callType": "async",
"desc": "属性设置",
"method": "thing.service.property.set",
"inputData": [],
"outputData": []
}, {
"identifier": "get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取",
"method": "thing.service.property.get",
"inputData": [],
"outputData": []
}, {
"identifier": "sendCode",
"name": "发送红外码",
"required": false,
"callType": "async",
"method": "thing.service.sendCode",
"inputData": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}],
"outputData": []
}, {
"identifier": "learnCode",
"name": "学习红外码",
"required": false,
"callType": "async",
"method": "thing.service.learnCode",
"inputData": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}],
"outputData": []
}, {
"identifier": "saveCode",
"name": "保存红外码",
"required": false,
"callType": "async",
"method": "thing.service.saveCode",
"inputData": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}],
"outputData": []
}, {
"identifier": "saveRC",
"name": "保存遥控器",
"required": false,
"callType": "async",
"method": "thing.service.saveRC",
"inputData": [{
"identifier": "rcs",
"name": "遥控器数组",
"dataType": {
"type": "array",
"specs": {
"size": "128",
"item": {
"type": "struct",
"specs": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "ButtonName",
"name": "按键名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}]
}
}
}
}],
"outputData": []
}, {
"identifier": "getRC",
"name": "获取遥控器",
"required": false,
"callType": "sync",
"method": "thing.service.getRC",
"inputData": [],
"outputData": [{
"identifier": "rcs",
"name": "遥控器数组",
"dataType": {
"type": "array",
"specs": {
"size": "128",
"item": {
"type": "struct",
"specs": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "ButtonName",
"name": "按键名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "ButtonIcon",
"name": "按键图标",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "ButtonStatus",
"name": "按键图标",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}]
}
}
}
}]
}, {
"identifier": "getBindCodeLib",
"name": "获取绑定的码库",
"required": false,
"callType": "sync",
"method": "thing.service.getBindCodeLib",
"inputData": [],
"outputData": [{
"identifier": "codeLibs",
"name": "码库数组",
"dataType": {
"type": "array",
"specs": {
"size": "128",
"item": {
"type": "struct",
"specs": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "codeLibType",
"name": "码库类型",
"dataType": {
"type": "enum",
"specs": {
"0": "无码库",
"1": "手动学习码库",
"2": "云端码库",
"3": "私有码库"
}
}
}, {
"identifier": "CodeLibName",
"name": "码库名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceBrand",
"name": "设备设备品牌",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceModel",
"name": "设备型号",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "pCode",
"name": "匹配码",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}]
}
}
}
}]
}, {
"identifier": "getCodeLibButtons",
"name": "获取码库下的遥控器",
"required": false,
"callType": "sync",
"method": "thing.service.getCodeLibButtons",
"inputData": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}],
"outputData": [{
"identifier": "rcs",
"name": "遥控器数组",
"dataType": {
"type": "array",
"specs": {
"size": "128",
"item": {
"type": "struct",
"specs": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "ButtonName",
"name": "按键名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "ButtonIcon",
"name": "按键图标",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "ButtonStatus",
"name": "按键图标",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}]
}
}
}
}]
}, {
"identifier": "getLocalCodeLibs",
"name": "获取本地私有的码库",
"required": false,
"callType": "sync",
"method": "thing.service.getLocalCodeLibs",
"inputData": [{
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}],
"outputData": [{
"identifier": "codeLibs",
"name": "码库数组",
"dataType": {
"type": "array",
"specs": {
"size": "128",
"item": {
"type": "struct",
"specs": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "codeLibType",
"name": "码库类型",
"dataType": {
"type": "enum",
"specs": {
"0": "无码库",
"1": "手动学习码库",
"2": "云端码库",
"3": "私有码库"
}
}
}, {
"identifier": "CodeLibName",
"name": "码库名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceBrand",
"name": "设备设备品牌",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceModel",
"name": "设备型号",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "pCode",
"name": "匹配码",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}]
}
}
}
}]
}, {
"identifier": "saveCodeLib",
"name": "保存本地私有的码库",
"required": false,
"callType": "sync",
"method": "thing.service.saveCodeLib",
"inputData": [{
"identifier": "codeLibType",
"name": "码库类型",
"dataType": {
"type": "enum",
"specs": {
"0": "无码库",
"1": "手动学习码库",
"2": "云端码库",
"3": "私有码库"
}
}
}, {
"identifier": "CodeLibName",
"name": "码库名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceBrand",
"name": "设备设备品牌",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceModel",
"name": "设备型号",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "pCode",
"name": "匹配码",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}],
"outputData": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}]
}, {
"identifier": "deleteCodeLib",
"name": "删除本地私有的码库",
"required": false,
"callType": "sync",
"method": "thing.service.deleteCodeLib",
"inputData": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}],
"outputData": []
}, {
"identifier": "matchCodeLib",
"name": "匹配码库",
"required": false,
"callType": "sync",
"method": "thing.service.matchCodeLib",
"inputData": [{
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}],
"outputData": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "codeLibType",
"name": "码库类型",
"dataType": {
"type": "enum",
"specs": {
"0": "无码库",
"1": "手动学习码库",
"2": "云端码库",
"3": "私有码库"
}
}
}, {
"identifier": "CodeLibName",
"name": "码库名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceBrand",
"name": "设备设备品牌",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceModel",
"name": "设备型号",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "pCode",
"name": "匹配码",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}]
}, {
"identifier": "downloadLibCode",
"name": "下载红外码库到设备",
"required": false,
"callType": "sync",
"method": "thing.service.downloadLibCode",
"inputData": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "codeLibType",
"name": "码库类型",
"dataType": {
"type": "enum",
"specs": {
"0": "无码库",
"1": "手动学习码库",
"2": "云端码库",
"3": "私有码库"
}
}
}, {
"identifier": "CodeLibName",
"name": "码库名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceBrand",
"name": "设备设备品牌",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceModel",
"name": "设备型号",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "pCode",
"name": "匹配码",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}],
"outputData": []
}, {
"identifier": "testLibCode",
"name": "测试红外码库",
"required": false,
"callType": "sync",
"method": "thing.service.testLibCode",
"inputData": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}],
"outputData": []
}, {
"identifier": "resetBindCodeLib",
"name": "重置红外码库",
"required": false,
"callType": "sync",
"method": "thing.service.resetBindCodeLib",
"inputData": [],
"outputData": []
}],
"properties": [{
"identifier": "ButtonId",
"name": "按键id",
"accessMode": "r",
"required": true,
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "ButtonName",
"name": "按键名字",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "ButtonIcon",
"name": "按键图标",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "ButtonStatus",
"name": "按键学习状态",
"accessMode": "rw",
"required": false,
"dataType": {
"type": "enum",
"specs": {
"0": "未学习",
"1": "已学习"
}
}
}, {
"identifier": "CodeLibId",
"name": "码库id",
"accessMode": "r",
"required": true,
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "codeLibType",
"name": "码库类型",
"accessMode": "rw",
"required": false,
"dataType": {
"type": "enum",
"specs": {
"0": "无码库",
"1": "手动学习码库",
"2": "云端码库",
"3": "私有码库"
}
}
}, {
"identifier": "CodeLibName",
"name": "码库名字",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceType",
"name": "设备类型",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceBrand",
"name": "设备设备品牌",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceModel",
"name": "设备型号",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "pCode",
"name": "匹配码",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}],
"events": [{
"identifier": "post",
"name": "post",
"type": "info",
"required": true,
"desc": "属性上报",
"method": "thing.event.property.post",
"outputData": []
}, {
"identifier": "LearnCodeNotify",
"name": "学习码库通知消息",
"type": "info",
"required": true,
"method": "thing.event.LearnCodeNotify.post",
"outputData": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}]
}, {
"identifier": "DownloadLibCodeNotify",
"name": "下载码库通知消息",
"type": "info",
"required": true,
"method": "thing.event.DownloadLibCodeNotify.post",
"outputData": [{
"identifier": "Process",
"name": "码库下载进度",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "100"
}
}
}]
}]
}
\ No newline at end of file
{
"schema": "https://iot-ap.ikonke.com/model/product_1055.json",
"productType": "IRRC",
"profile": {
"heartbeat": "3000",
"productCode": "1055",
"productName": "红外遥控器pro"
},
"services": [{
"identifier": "set",
"name": "set",
"required": true,
"callType": "async",
"desc": "属性设置",
"method": "thing.service.property.set",
"inputData": [],
"outputData": []
}, {
"identifier": "get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取",
"method": "thing.service.property.get",
"inputData": [],
"outputData": []
}, {
"identifier": "sendCode",
"name": "发送红外码",
"required": false,
"callType": "async",
"method": "thing.service.sendCode",
"inputData": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}],
"outputData": []
}, {
"identifier": "learnCode",
"name": "学习红外码",
"required": false,
"callType": "async",
"method": "thing.service.learnCode",
"inputData": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}],
"outputData": []
}, {
"identifier": "saveCode",
"name": "保存红外码",
"required": false,
"callType": "async",
"method": "thing.service.saveCode",
"inputData": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}],
"outputData": []
}, {
"identifier": "saveRC",
"name": "保存遥控器",
"required": false,
"callType": "async",
"method": "thing.service.saveRC",
"inputData": [{
"identifier": "rcs",
"name": "遥控器数组",
"dataType": {
"type": "array",
"specs": {
"size": "128",
"item": {
"type": "struct",
"specs": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "ButtonName",
"name": "按键名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}]
}
}
}
}],
"outputData": []
}, {
"identifier": "getRC",
"name": "获取遥控器",
"required": false,
"callType": "sync",
"method": "thing.service.getRC",
"inputData": [],
"outputData": [{
"identifier": "rcs",
"name": "遥控器数组",
"dataType": {
"type": "array",
"specs": {
"size": "128",
"item": {
"type": "struct",
"specs": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "ButtonName",
"name": "按键名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "ButtonIcon",
"name": "按键图标",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "ButtonStatus",
"name": "按键图标",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}]
}
}
}
}]
}, {
"identifier": "getBindCodeLib",
"name": "获取绑定的码库",
"required": false,
"callType": "sync",
"method": "thing.service.getBindCodeLib",
"inputData": [],
"outputData": [{
"identifier": "codeLibs",
"name": "码库数组",
"dataType": {
"type": "array",
"specs": {
"size": "128",
"item": {
"type": "struct",
"specs": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "codeLibType",
"name": "码库类型",
"dataType": {
"type": "enum",
"specs": {
"0": "无码库",
"1": "手动学习码库",
"2": "云端码库",
"3": "私有码库"
}
}
}, {
"identifier": "CodeLibName",
"name": "码库名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceBrand",
"name": "设备设备品牌",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceModel",
"name": "设备型号",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "pCode",
"name": "匹配码",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}]
}
}
}
}]
}, {
"identifier": "getCodeLibButtons",
"name": "获取码库下的遥控器",
"required": false,
"callType": "sync",
"method": "thing.service.getCodeLibButtons",
"inputData": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}],
"outputData": [{
"identifier": "rcs",
"name": "遥控器数组",
"dataType": {
"type": "array",
"specs": {
"size": "128",
"item": {
"type": "struct",
"specs": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "ButtonName",
"name": "按键名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "ButtonIcon",
"name": "按键图标",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "ButtonStatus",
"name": "按键图标",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}]
}
}
}
}]
}, {
"identifier": "getLocalCodeLibs",
"name": "获取本地私有的码库",
"required": false,
"callType": "sync",
"method": "thing.service.getLocalCodeLibs",
"inputData": [{
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}],
"outputData": [{
"identifier": "codeLibs",
"name": "码库数组",
"dataType": {
"type": "array",
"specs": {
"size": "128",
"item": {
"type": "struct",
"specs": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "codeLibType",
"name": "码库类型",
"dataType": {
"type": "enum",
"specs": {
"0": "无码库",
"1": "手动学习码库",
"2": "云端码库",
"3": "私有码库"
}
}
}, {
"identifier": "CodeLibName",
"name": "码库名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceBrand",
"name": "设备设备品牌",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceModel",
"name": "设备型号",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "pCode",
"name": "匹配码",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}]
}
}
}
}]
}, {
"identifier": "saveCodeLib",
"name": "保存本地私有的码库",
"required": false,
"callType": "sync",
"method": "thing.service.saveCodeLib",
"inputData": [{
"identifier": "codeLibType",
"name": "码库类型",
"dataType": {
"type": "enum",
"specs": {
"0": "无码库",
"1": "手动学习码库",
"2": "云端码库",
"3": "私有码库"
}
}
}, {
"identifier": "CodeLibName",
"name": "码库名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceBrand",
"name": "设备设备品牌",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceModel",
"name": "设备型号",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "pCode",
"name": "匹配码",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}],
"outputData": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}]
}, {
"identifier": "deleteCodeLib",
"name": "删除本地私有的码库",
"required": false,
"callType": "sync",
"method": "thing.service.deleteCodeLib",
"inputData": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}],
"outputData": []
}, {
"identifier": "matchCodeLib",
"name": "匹配码库",
"required": false,
"callType": "sync",
"method": "thing.service.matchCodeLib",
"inputData": [{
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}],
"outputData": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "codeLibType",
"name": "码库类型",
"dataType": {
"type": "enum",
"specs": {
"0": "无码库",
"1": "手动学习码库",
"2": "云端码库",
"3": "私有码库"
}
}
}, {
"identifier": "CodeLibName",
"name": "码库名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceBrand",
"name": "设备设备品牌",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceModel",
"name": "设备型号",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "pCode",
"name": "匹配码",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}]
}, {
"identifier": "downloadLibCode",
"name": "下载红外码库到设备",
"required": false,
"callType": "sync",
"method": "thing.service.downloadLibCode",
"inputData": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "codeLibType",
"name": "码库类型",
"dataType": {
"type": "enum",
"specs": {
"0": "无码库",
"1": "手动学习码库",
"2": "云端码库",
"3": "私有码库"
}
}
}, {
"identifier": "CodeLibName",
"name": "码库名字",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceType",
"name": "设备类型",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceBrand",
"name": "设备设备品牌",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceModel",
"name": "设备型号",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "pCode",
"name": "匹配码",
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}],
"outputData": []
}, {
"identifier": "testLibCode",
"name": "测试红外码库",
"required": false,
"callType": "sync",
"method": "thing.service.testLibCode",
"inputData": [{
"identifier": "CodeLibId",
"name": "码库id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}],
"outputData": []
}, {
"identifier": "resetBindCodeLib",
"name": "重置红外码库",
"required": false,
"callType": "sync",
"method": "thing.service.resetBindCodeLib",
"inputData": [],
"outputData": []
}],
"properties": [{
"identifier": "ButtonId",
"name": "按键id",
"accessMode": "r",
"required": true,
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "ButtonName",
"name": "按键名字",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "ButtonIcon",
"name": "按键图标",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "ButtonStatus",
"name": "按键学习状态",
"accessMode": "rw",
"required": false,
"dataType": {
"type": "enum",
"specs": {
"0": "未学习",
"1": "已学习"
}
}
}, {
"identifier": "CodeLibId",
"name": "码库id",
"accessMode": "r",
"required": true,
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}, {
"identifier": "codeLibType",
"name": "码库类型",
"accessMode": "rw",
"required": false,
"dataType": {
"type": "enum",
"specs": {
"0": "无码库",
"1": "手动学习码库",
"2": "云端码库",
"3": "私有码库"
}
}
}, {
"identifier": "CodeLibName",
"name": "码库名字",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceType",
"name": "设备类型",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceBrand",
"name": "设备设备品牌",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "DeviceModel",
"name": "设备型号",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}, {
"identifier": "pCode",
"name": "匹配码",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "text",
"specs": {
"length": "255"
}
}
}],
"events": [{
"identifier": "post",
"name": "post",
"type": "info",
"required": true,
"desc": "属性上报",
"method": "thing.event.property.post",
"outputData": []
}, {
"identifier": "LearnCodeNotify",
"name": "学习码库通知消息",
"type": "info",
"required": true,
"method": "thing.event.LearnCodeNotify.post",
"outputData": [{
"identifier": "ButtonId",
"name": "按键id",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "1000"
}
}
}]
}, {
"identifier": "DownloadLibCodeNotify",
"name": "下载码库通知消息",
"type": "info",
"required": true,
"method": "thing.event.DownloadLibCodeNotify.post",
"outputData": [{
"identifier": "Process",
"name": "码库下载进度",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "100"
}
}
}]
}]
}
\ No newline at end of file
{
"schema": "https://iot-ap.ikonke.com/model/product_15502.json",
"productType": "air switch controller",
"profile": {
"heartbeat": "3000",
"productCode": "15502",
"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": "开启"
}
}
},
{
"identifier": "LoadAlarmState",
"name": "负载报警状态",
"dataType": {
"type": "bool",
"specs": {
"0": "不报警",
"1": "报警"
}
}
},
{
"identifier": "TemperatureAlarmState",
"name": "温度报警状态",
"dataType": {
"type": "bool",
"specs": {
"0": "不报警",
"1": "报警"
}
}
}
],
"outputData": []
},
{
"identifier": "get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取",
"method": "thing.service.property.get",
"inputData": [
"GetAirSwitchStatus"
],
"outputData": [
{
"identifier": "PowerSwitch",
"name": "空开开关",
"dataType": {
"type": "bool",
"specs": {
"0": "关闭",
"1": "开启"
}
}
},
{
"identifier": "LoadAlarmState",
"name": "负载报警状态",
"dataType": {
"type": "bool",
"specs": {
"0": "不报警",
"1": "报警"
}
}
},
{
"identifier": "TemperatureAlarmState",
"name": "温度报警状态",
"dataType": {
"type": "bool",
"specs": {
"0": "不报警",
"1": "报警"
}
}
},
{
"identifier": "Voltage",
"name": "电压",
"dataType": {
"type": "double",
"specs": {
"unit": "V",
"unitName": "伏",
"step": "0.01"
}
}
},
{
"identifier": "Current",
"name": "电流",
"dataType": {
"type": "double",
"specs": {
"unit": "A",
"unitName": "安",
"step": "0.01"
}
}
},
{
"identifier": "Power",
"name": "功率",
"dataType": {
"type": "double",
"specs": {
"unit": "W",
"unitName": "瓦",
"step": "1"
}
}
},
{
"identifier": "Electricity",
"name": "电量",
"dataType": {
"type": "double",
"specs": {
"unit": "kWh",
"unitName": "千瓦时",
"step": "1"
}
}
},
{
"identifier": "Temperature",
"name": "温度",
"dataType": {
"type": "double",
"specs": {
"unit": "℃",
"unitName": "摄氏度",
"step": "0.1"
}
}
}
]
}
],
"properties": [
{
"identifier": "PowerSwitch",
"name": "空开开关",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "bool",
"specs": {
"0": "关闭",
"1": "开启"
}
}
},
{
"identifier": "LoadAlarmState",
"name": "负载报警状态",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "bool",
"specs": {
"0": "不报警",
"1": "报警"
}
}
},
{
"identifier": "TemperatureAlarmState",
"name": "温度报警状态",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "bool",
"specs": {
"0": "不报警",
"1": "报警"
}
}
},
{
"identifier": "Voltage",
"name": "电压",
"accessMode": "r",
"required": true,
"dataType": {
"type": "bool",
"specs": {
"unit": "V",
"unitName": "伏",
"step": "0.01"
}
}
},
{
"identifier": "Current",
"name": "电流",
"accessMode": "r",
"required": true,
"dataType": {
"type": "double",
"specs": {
"unit": "A",
"unitName": "安",
"step": "0.01"
}
}
},
{
"identifier": "Power",
"name": "功率",
"accessMode": "r",
"required": true,
"dataType": {
"type": "double",
"specs": {
"unit": "W",
"unitName": "瓦",
"step": "1"
}
}
},
{
"identifier": "Electricity",
"name": "电量",
"accessMode": "r",
"required": true,
"dataType": {
"type": "double",
"specs": {
"unit": "kWh",
"unitName": "千瓦时",
"step": "1"
}
}
},
{
"identifier": "Temperature",
"name": "温度",
"accessMode": "r",
"required": true,
"dataType": {
"type": "double",
"specs": {
"unit": "℃",
"unitName": "摄氏度",
"step": "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": "开启"
}
}
}
]
},
{
"identifier": "airSwitchAlarm",
"name": "airSwitchAlarm",
"type": "info",
"required": true,
"desc": "告警上报",
"method": "thing.event.airSwitchAlarm.post",
"outputData": [
{
"identifier": "LoadAlarmState",
"name": "负载报警状态",
"dataType": {
"type": "bool",
"specs": {
"0": "不报警",
"1": "报警"
}
}
},
{
"identifier": "TemperatureAlarmState",
"name": "温度报警状态",
"dataType": {
"type": "bool",
"specs": {
"0": "不报警",
"1": "报警"
}
}
}
]
}
]
}
\ No newline at end of file
{
"schema": "https://iot-ap.ikonke.com/model/product_2102.json",
"productType":"outlet",
"profile":{
"heartbeat": "3000",
"productCode": "2102",
"productName": "星辰二路零火面板"
},
"services":[
{
"outputData":[
],
"identifier":"set",
"inputData":[
{
"identifier":"PowerSwitch",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"IndicatorLight",
"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":"IndicatorLight",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"指示灯"
}],
"identifier":"get",
"inputData":[
"PowerSwitch",
"IndicatorLight"],
"method":"thing.service.property.get",
"name":"get",
"required":true,
"callType":"async",
"desc":"属性获取"
},
{
"outputData":[
],
"identifier":"setLocalTimer",
"inputData":[
{
"identifier":"LocalTimer",
"dataType":{
"specs":{
"item":{
"specs":[
{
"identifier":"Timer",
"dataType":{
"specs":{
"length":"255"
},
"type":"text"
},
"name":"定时时间"
},
{
"identifier":"Enable",
"dataType":{
"specs":{
"0":"关",
"1":"开"
},
"type":"bool"
},
"name":"启用"
},
{
"identifier":"IsValid",
"dataType":{
"specs":{
"0":"无效",
"1":"有效"
},
"type":"bool"
},
"name":"可执行"
},
{
"identifier":"TimezoneOffset",
"dataType":{
"specs":{
"unit":"s",
"min":"-43200",
"unitName":"秒",
"max":"43200",
"step":"3600"
},
"type":"int"
},
"name":"时差"
},
{
"identifier":"Targets",
"dataType":{
"specs":{
"length":"2048"
},
"type":"text"
},
"name":"操作对象"
}],
"type":"struct"
},
"size":"5"
},
"type":"array"
},
"name":"本地定时"
}],
"method":"thing.service.setLocalTimer",
"name":"setLocalTimer",
"required":false,
"callType":"async",
"desc":"设置本地定时任务"
},
{
"outputData":[
{
"identifier":"LocalTimer",
"dataType":{
"specs":{
"item":{
"specs":[
{
"identifier":"Timer",
"dataType":{
"specs":{
"length":"255"
},
"type":"text"
},
"name":"定时时间"
},
{
"identifier":"Enable",
"dataType":{
"specs":{
"0":"关",
"1":"开"
},
"type":"bool"
},
"name":"启用"
},
{
"identifier":"IsValid",
"dataType":{
"specs":{
"0":"无效",
"1":"有效"
},
"type":"bool"
},
"name":"可执行"
},
{
"identifier":"TimezoneOffset",
"dataType":{
"specs":{
"unit":"s",
"min":"-43200",
"unitName":"秒",
"max":"43200",
"step":"3600"
},
"type":"int"
},
"name":"时差"
},
{
"identifier":"Targets",
"dataType":{
"specs":{
"length":"2048"
},
"type":"text"
},
"name":"操作对象"
}],
"type":"struct"
},
"size":"5"
},
"type":"array"
},
"name":"本地定时"
}],
"identifier":"getLocalTimer",
"inputData":[
"LocalTimer"],
"method":"thing.service.getLocalTimer",
"name":"getLocalTimer",
"required":false,
"callType":"async",
"desc":"获取本地定时任务"
},
{
"outputData":[
],
"identifier":"setCountDown",
"inputData":[
{
"identifier":"CountDown",
"dataType":{
"specs":{
"item":{
"specs":[
{
"identifier":"DelayTime",
"dataType":{
"specs":{
"unit":"s",
"min":"0",
"unitName":"秒",
"max":"86400",
"step":"1"
},
"type":"int"
},
"name":"定时时间"
},
{
"identifier":"CurrentTime",
"dataType":{
"specs":{
"unit":"s",
"unitName":"秒"
},
"type":"int"
},
"name":"定时时间"
},
{
"identifier":"Enable",
"dataType":{
"specs":{
"0":"关",
"1":"开"
},
"type":"bool"
},
"name":"启用"
},
{
"identifier":"IsValid",
"dataType":{
"specs":{
"0":"无效",
"1":"有效"
},
"type":"bool"
},
"name":"可执行"
},
{
"identifier":"Targets",
"dataType":{
"specs":{
"length":"2048"
},
"type":"text"
},
"name":"操作对象"
}],
"type":"struct"
},
"size":"5"
},
"type":"array"
},
"name":"本地倒计时"
}],
"method":"thing.service.setCountDown",
"name":"setCountDown",
"required":false,
"callType":"async",
"desc":"设置本地倒计时任务"
},
{
"outputData":[
{
"identifier":"CountDown",
"dataType":{
"specs":{
"item":{
"specs":[
{
"identifier":"DelayTime",
"dataType":{
"specs":{
"unit":"s",
"min":"0",
"unitName":"秒",
"max":"86400",
"step":"1"
},
"type":"int"
},
"name":"定时时间"
},
{
"identifier":"CurrentTime",
"dataType":{
"specs":{
"unit":"s",
"unitName":"秒"
},
"type":"int"
},
"name":"定时时间"
},
{
"identifier":"Enable",
"dataType":{
"specs":{
"0":"关",
"1":"开"
},
"type":"bool"
},
"name":"启用"
},
{
"identifier":"IsValid",
"dataType":{
"specs":{
"0":"无效",
"1":"有效"
},
"type":"bool"
},
"name":"可执行"
},
{
"identifier":"Targets",
"dataType":{
"specs":{
"length":"2048"
},
"type":"text"
},
"name":"操作对象"
}],
"type":"struct"
},
"size":"5"
},
"type":"array"
},
"name":"本地倒计时"
}],
"identifier":"getCountDown",
"inputData":[
"CountDown"],
"method":"thing.service.getCountDown",
"name":"getCountDown",
"required":false,
"callType":"async",
"desc":"获取本地倒计时任务"
}],
"properties":[
{
"identifier":"PowerSwitch",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关",
"accessMode":"rw",
"required":true
},
{
"identifier":"IndicatorLight",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"指示灯"
}],
"events":[
{
"outputData":[
{
"identifier":"PowerSwitch",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"IndicatorLight",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"指示灯"
}],
"identifier":"property",
"method":"thing.event.property.post",
"name":"property",
"type":"info",
"required":true,
"desc":"属性上报"
}]
}
...@@ -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": [
......
{ {
"schema": "https://iot-ap.ikonke.com/model/product_3044.json", "schema": "https://iot-ap.ikonke.com/model/product_3044.json",
"productType": "siren", "productType": "siren",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "300", "heartbeat": "300",
"productCode": "3044", "productCode": "3044",
...@@ -186,6 +186,21 @@ ...@@ -186,6 +186,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_3045.json", "schema": "https://iot-ap.ikonke.com/model/product_3045.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "1200", "heartbeat": "1200",
"productCode": "3045", "productCode": "3045",
...@@ -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_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",
......
{ {
"schema": "https://iot-ap.ikonke.com/model/product_3048.json", "schema": "https://iot-ap.ikonke.com/model/product_3048.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.0",
"profile": { "profile": {
"heartbeat": "7200", "heartbeat": "7200",
"productCode": "3048", "productCode": "3048",
......
{ {
"schema": "https://iot-ap.ikonke.com/model/product_3049.json", "schema": "https://iot-ap.ikonke.com/model/product_3049.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "7200", "heartbeat": "7200",
"productCode": "3049", "productCode": "3049",
...@@ -63,21 +63,6 @@ ...@@ -63,21 +63,6 @@
} }
} }
}, },
{
"identifier": "SensorType",
"name": "安防等级",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0": "在家安防",
"1": "室外安防",
"2": "24小时警戒",
"3": "无警戒"
}
}
},
{ {
"identifier": "Battery", "identifier": "Battery",
"name": "电池电量", "name": "电池电量",
...@@ -93,6 +78,21 @@ ...@@ -93,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_3050.json", "schema": "https://iot-ap.ikonke.com/model/product_3050.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "7200", "heartbeat": "7200",
"productCode": "3050", "productCode": "3050",
...@@ -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_3051.json", "schema": "https://iot-ap.ikonke.com/model/product_3051.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "1200", "heartbeat": "1200",
"productCode": "3051", "productCode": "3051",
...@@ -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_3052.json", "schema": "https://iot-ap.ikonke.com/model/product_3052.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "1200", "heartbeat": "1200",
"productCode": "3052", "productCode": "3052",
...@@ -177,6 +177,21 @@ ...@@ -177,6 +177,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_3053.json", "schema": "https://iot-ap.ikonke.com/model/product_3053.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "1200", "heartbeat": "1200",
"productCode": "3053", "productCode": "3053",
...@@ -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_3054.json", "schema": "https://iot-ap.ikonke.com/model/product_3054.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "1200", "heartbeat": "1200",
"productCode": "3054", "productCode": "3054",
...@@ -11,6 +11,17 @@ ...@@ -11,6 +11,17 @@
"services": [ "services": [
{ {
"outputData": [ "outputData": [
{
"identifier": "sosAlarmState",
"name": "紧急按钮告警状态",
"dataType": {
"type": "enum",
"specs": {
"0": "没有报警",
"1": "报警"
}
}
},
{ {
"identifier": "Battery", "identifier": "Battery",
"name": "电池电量", "name": "电池电量",
...@@ -38,6 +49,19 @@ ...@@ -38,6 +49,19 @@
} }
], ],
"properties": [ "properties": [
{
"identifier": "sosAlarmState",
"name": "紧急按钮告警状态",
"accessMode": "r",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0": "没有报警",
"1": "报警"
}
}
},
{ {
"identifier": "Battery", "identifier": "Battery",
"name": "电池电量", "name": "电池电量",
...@@ -53,6 +77,21 @@ ...@@ -53,6 +77,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_3055.json", "schema": "https://iot-ap.ikonke.com/model/product_3055.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "1200", "heartbeat": "1200",
"productCode": "3055", "productCode": "3055",
...@@ -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_3057.json", "schema": "https://iot-ap.ikonke.com/model/product_3057.json",
"productType": "siren", "productType": "siren",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "300", "heartbeat": "300",
"productCode": "3057", "productCode": "3057",
...@@ -186,6 +186,21 @@ ...@@ -186,6 +186,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": [
......
...@@ -71,7 +71,23 @@ ...@@ -71,7 +71,23 @@
"desc": "属性获取" "desc": "属性获取"
}, },
{ {
"outputData": [], "outputData": [
{
"identifier": "openfeedback",
"name": "远程开锁反馈",
"dataType": {
"type": "enum",
"specs": {
"0":"成功",
"1":"密码错误",
"16":"不支持远程开锁",
"18":"系统已锁定",
"19":"远程开门未使能",
"255":"未知错误"
}
}
}
],
"identifier": "OpenLock", "identifier": "OpenLock",
"inputData": [ "inputData": [
{ {
......
{ {
"schema": "https://iot-ap.ikonke.com/model/product_3070.json", "schema": "https://iot-ap.ikonke.com/model/product_3070.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.0",
"profile": { "profile": {
"heartbeat": "300", "heartbeat": "300",
"productCode": "3070", "productCode": "3070",
"productName": "传感器模块Z3S(KONKE)", "productName": "传感器模块Z3S(KONKE)"
}, },
"services": [ "services": [
{
"outputData":[
],
"identifier":"set",
"inputData":[
{
"identifier":"NormalState",
"dataType":{
"specs":{
"0": "常闭",
"1": "常开"
},
"type":"enum"
},
"name":"常开常闭状态"
}
],
"method":"thing.service.property.set",
"name":"set",
"required":true,
"callType":"async",
"desc":"属性设置"
},
{ {
"outputData": [ "outputData": [
{ {
...@@ -35,8 +59,8 @@ ...@@ -35,8 +59,8 @@
], ],
"identifier": "get", "identifier": "get",
"inputData": [ "inputData": [
"WaterSensorState", "DryContactState",
"Battery" "NormalState"
], ],
"method": "thing.service.property.get", "method": "thing.service.property.get",
"name": "get", "name": "get",
...@@ -62,6 +86,8 @@ ...@@ -62,6 +86,8 @@
{ {
"identifier": "NormalState", "identifier": "NormalState",
"name": "常开常闭状态", "name": "常开常闭状态",
"accessMode": "rw",
"required": true,
"dataType": { "dataType": {
"type": "enum", "type": "enum",
"specs": { "specs": {
...@@ -69,6 +95,21 @@ ...@@ -69,6 +95,21 @@
"1": "常开" "1": "常开"
} }
} }
},
{
"identifier": "SensorType",
"name": "安防等级",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0": "在家安防",
"1": "室外安防",
"2": "24小时警戒",
"3": "无警戒"
}
}
} }
], ],
"events": [ "events": [
......
...@@ -84,35 +84,13 @@ ...@@ -84,35 +84,13 @@
} }
}, },
"name": "白光亮度" "name": "白光亮度"
},
{
"identifier":"Mode",
"dataType":{
"type":"enum",
"specs":{
"0":"模式0",
"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", "method": "thing.service.property.set",
"name": "set", "name": "set",
"required": true, "required": true,
"callType": "async", "callType": "async",
"desc": "属性设置" "desc": "模式设置"
}, },
{ {
"outputData": [ "outputData": [
...@@ -208,25 +186,34 @@ ...@@ -208,25 +186,34 @@
], ],
"identifier":"setMode", "identifier":"setMode",
"inputData":[ "inputData":[
"模式0", {
"模式1", "identifier":"Mode",
"模式2", "dataType":{
"模式3", "type":"enum",
"模式4", "specs":{
"模式5", "0":"模式0",
"模式6", "1":"模式1",
"模式7", "2":"模式2",
"模式8", "3":"模式3",
"模式9", "4":"模式4",
"模式10", "5":"模式5",
"模式11", "6":"模式6",
"模式12" "7":"模式7",
"8":"模式8",
"9":"模式9",
"10":"模式10",
"11":"模式11",
"12":"模式12"
}
},
"name":"模式"
}
], ],
"method":"thing.service.setMode", "method":"thing.service.setMode",
"name":"setMode", "name":"setMode",
"required":true, "required":true,
"callType":"async", "callType":"async",
"desc":"属性值取反" "desc":"模式设置"
}, },
{ {
"outputData":[ "outputData":[
......
{ {
"schema":"https://iot-ap.ikonke.com/model/product_3078.json", "schema":"https://iot-ap.ikonke.com/model/product_3078.json",
"productType":"switch", "productType":"switch",
"version": "1.0", "version": "1",
"profile":{ "profile":{
"heartbeat":"300", "heartbeat":"300",
"productCode":"3078", "productCode":"3078",
......
{ {
"schema":"https://iot-ap.ikonke.com/model/product_3079.json", "schema":"https://iot-ap.ikonke.com/model/product_3079.json",
"productType":"switch", "productType":"switch",
"version": "1.0", "version": "1",
"profile":{ "profile":{
"heartbeat":"300", "heartbeat":"300",
"productCode":"3079", "productCode":"3079",
......
{ {
"schema": "https://iot-ap.ikonke.com/model/product_3080.json", "schema": "https://iot-ap.ikonke.com/model/product_3080.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "300", "heartbeat": "300",
"productCode": "3080", "productCode": "3080",
...@@ -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_3081.json", "schema": "https://iot-ap.ikonke.com/model/product_3081.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "1200", "heartbeat": "1200",
"productCode": "3081", "productCode": "3081",
...@@ -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_3082.json", "schema": "https://iot-ap.ikonke.com/model/product_3082.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "300", "heartbeat": "300",
"productCode": "3082", "productCode": "3082",
...@@ -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_3083.json", "schema": "https://iot-ap.ikonke.com/model/product_3083.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "1200", "heartbeat": "1200",
"productCode": "3083", "productCode": "3083",
...@@ -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_3105.json", "schema": "https://iot-ap.ikonke.com/model/product_3105.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "1200", "heartbeat": "1200",
"productCode": "3105", "productCode": "3105",
...@@ -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_3106.json", "schema": "https://iot-ap.ikonke.com/model/product_3106.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "300", "heartbeat": "300",
"productCode": "3106", "productCode": "3106",
...@@ -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_3108.json", "schema": "https://iot-ap.ikonke.com/model/product_3108.json",
"productType": "On/OffOutput", "productType": "On/Off Output",
"version": "1.0", "version": "1.0",
"profile": { "profile": {
"heartbeat": "300", "heartbeat": "300",
......
{
"schema": "https://iot-ap.ikonke.com/model/product_38.json",
"productType": "air cleaner",
"profile": {
"heartbeat": "3000",
"productCode": "38",
"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": "开启"
}
}
},
{
"identifier": "WorkMode",
"name": "工作模式",
"dataType": {
"type": "enum",
"specs": {
"0": "自动",
"1": "睡眠",
"2": "无"
}
}
},
{
"identifier": "AnionSwitch",
"name": "负离子开关",
"dataType": {
"type": "bool",
"specs": {
"0": "关闭",
"1": "开启"
}
}
},
{
"identifier": "WindVolume",
"name": "风量",
"dataType": {
"type": "enum",
"specs": {
"0"
"1"
"2"
"3"
}
}
}
],
"outputData": []
},
{
"identifier": "get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取",
"method": "thing.service.property.get",
"inputData": [],
"outputData": []
}
],
"properties": [
{
"identifier": "PowerSwitch",
"name": "电源开关",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "bool",
"specs": {
"0": "关闭",
"1": "开启"
}
}
},
{
"identifier": "WorkMode",
"name": "工作模式",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0": "自动",
"1": "睡眠",
"2": "无"
}
}
},
{
"identifier": "AnionSwitch",
"name": "负离子开关",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "bool",
"specs": {
"0": "关闭",
"1": "开启"
}
}
},
{
"identifier": "WindVolume",
"name": "风量",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0"
"1"
"2"
"3"
}
}
}
],
"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": "开启"
}
}
},
{
"identifier": "WorkMode",
"name": "工作模式",
"dataType": {
"type": "enum",
"specs": {
"0": "自动",
"1": "睡眠",
"2": "无"
}
}
},
{
"identifier": "AnionSwitch",
"name": "负离子开关",
"dataType": {
"type": "bool",
"specs": {
"0": "关闭",
"1": "开启"
}
}
},
{
"identifier": "WindVolume",
"name": "风量",
"dataType": {
"type": "enum",
"specs": {
"0"
"1"
"2"
"3"
}
}
},
{
"identifier": "AirCleanVolume",
"name": "净化空气量",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"unit": "m³",
"unitName": "立方米",
"step": "1"
}
}
},
{
"identifier": "AirQuality",
"name": "空气质量",
"dataType": {
"type": "enum",
"specs": {
"0":"优"
"1":"良"
"2":"轻度污染"
"3":"重度污染"
}
}
},
{
"identifier": "AirQualityIndex",
"name": "空气指数",
"dataType": {
"type": "length",
"specs": {
"min": "0",
"max": "500",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
}
}
]
}
]
}
\ No newline at end of file
{
"schema":"https://iotx-tsl.oss-ap-southeast-1.aliyuncs.com/schema.json",
"productType":"lightPanel",
"profile":{
"type":"1003"
},
"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":"Brightness",
"dataType":{
"specs":{
"unit":"%",
"min":"1",
"unitName":"百分比",
"max":"100",
"step":"1"
},
"type":"int"
},
"name":"明暗度"
},
{
"identifier":"BrightnessChangeTime",
"dataType":{
"specs":{
"unit":"s",
"min":"0",
"unitName":"秒",
"max":"5",
"step":"1"
},
"type":"int"
},
"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":{
"specs":{
"unit":"%",
"min":"1",
"unitName":"百分比",
"max":"100",
"step":"1"
},
"type":"int"
},
"name":"明暗度"
},
{
"identifier":"BrightnessChangeTime",
"dataType":{
"specs":{
"unit":"s",
"min":"0",
"unitName":"秒",
"max":"5",
"step":"1"
},
"type":"int"
},
"name":"明暗度改变时长"
}],
"identifier":"get",
"inputData":[
"PowerSwitch",
"Brightness",
"BrightnessChangeTime"],
"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":"Brightness",
"dataType":{
"specs":{
"unit":"%",
"min":"1",
"unitName":"百分比",
"max":"100",
"step":"1"
},
"type":"int"
},
"name":"明暗度",
"accessMode":"rw",
"required":false
},
{
"identifier":"BrightnessChangeTime",
"dataType":{
"specs":{
"unit":"s",
"min":"0",
"unitName":"秒",
"max":"5",
"step":"1"
},
"type":"int"
},
"name":"明暗度改变时长"
}],
"events":[
{
"outputData":[
{
"identifier":"PowerSwitch",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"Brightness",
"dataType":{
"specs":{
"unit":"%",
"min":"1",
"unitName":"百分比",
"max":"100",
"step":"1"
},
"type":"int"
},
"name":"明暗度"
},
{
"identifier":"BrightnessChangeTime",
"dataType":{
"specs":{
"unit":"s",
"min":"0",
"unitName":"秒",
"max":"5",
"step":"1"
},
"type":"int"
},
"name":"明暗度改变时长"
}],
"identifier":"property",
"method":"thing.event.property.post",
"name":"property",
"type":"info",
"required":true,
"desc":"属性上报"
}]
}
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