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

Merge branch 'yjq' into 'master'

将read rsp转换为物模型格式上报

See merge request chenweican/k-sdk!53
parents 04d09cfe b7f0c6d5
......@@ -133,6 +133,7 @@ void kk_read_attr_response(EmberNodeId nodeId,
}
kk_colorlight_attr_read(nodeId,ep,cluster,attribute,status,dataType,dataSize,data);
}
void emberAfPluginDeviceTableNewDeviceCallback(EmberEUI64 nodeEui64)
{
......
......@@ -845,6 +845,7 @@ bool rpc_ReadAttributesResponseCallback(EmberAfClusterId clusterId,
uint8_t * bufferTemp;
uint8_t * bufferPtr = buffer;
uint8_t i, bufferSize,typeSize;
uint8_t dataType;
EmberAfAttributeId attributeId;
uint8_t cnt=1;
uint8_t Status;
......@@ -882,16 +883,16 @@ bool rpc_ReadAttributesResponseCallback(EmberAfClusterId clusterId,
if(Status == EMBER_ZCL_STATUS_SUCCESS){
if(emberAfIsStringAttributeType(bufferPtr[3])){
dataType = bufferPtr[3];
if(emberAfIsStringAttributeType(dataType)){
bufferSize = bufferPtr[4];
typeSize = 1;
}else if(emberAfIsLongStringAttributeType(bufferPtr[3])){
}else if(emberAfIsLongStringAttributeType(dataType)){
bufferSize = HIGH_LOW_TO_INT(bufferPtr[5], bufferPtr[4]);
typeSize = 2;
}else {
typeSize = 0;
bufferSize = emberAfGetDataSize(
bufferPtr[3]);
bufferSize = emberAfGetDataSize(dataType);
}
bufferSize = bufferSize + 4 + typeSize;
bufferTemp = (uint8_t*)malloc(bufferSize);
......@@ -920,6 +921,8 @@ bool rpc_ReadAttributesResponseCallback(EmberAfClusterId clusterId,
uint8_t *dataPtr = &bufferTemp[ATTRIBUTE_BUFFER_REPORT_DATA_TYPE+1+1+typeSize];
rpc_cJSON_AddDataToObject(item_attr,dataPtr,dataLen);
kk_device_config_item_report(nodeEui64,ep,clusterId,attributeId,dataType,dataLen,dataPtr);
kk_read_attr_response(nodeId,
ep,
clusterId,
......
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