Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
K
k-sdk
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
陈伟灿
k-sdk
Commits
fc3fe0ee
Commit
fc3fe0ee
authored
Sep 09, 2020
by
黄振令
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://172.17.3.10:17001/chenweican/k-sdk
parents
dbaa62f2
4edd1128
Changes
11
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
3479 additions
and
4085 deletions
+3479
-4085
application/kcloud/kcloud_config.h
application/kcloud/kcloud_config.h
+1
-1
midware/midware/dm/kk_dm_mng.c
midware/midware/dm/kk_dm_mng.c
+1365
-1344
midware/midware/dm/kk_dm_msg.c
midware/midware/dm/kk_dm_msg.c
+73
-2
midware/midware/dm/kk_linkkit.c
midware/midware/dm/kk_linkkit.c
+1737
-1731
midware/midware/dm/kk_property_db.c
midware/midware/dm/kk_property_db.c
+7
-6
midware/midware/dm/kk_wlist_mng.c
midware/midware/dm/kk_wlist_mng.c
+0
-457
midware/midware/dm/kk_wlist_mng.h
midware/midware/dm/kk_wlist_mng.h
+0
-17
midware/midware/midware.c
midware/midware/midware.c
+14
-6
midware/tsl/tsl_handle/kk_tsl_api.c
midware/tsl/tsl_handle/kk_tsl_api.c
+184
-434
midware/tsl/tsl_handle/kk_tsl_api.h
midware/tsl/tsl_handle/kk_tsl_api.h
+87
-87
midware/tsl/tsl_handle/kk_tsl_load.c
midware/tsl/tsl_handle/kk_tsl_load.c
+11
-0
No files found.
application/kcloud/kcloud_config.h
View file @
fc3fe0ee
...
@@ -7,7 +7,7 @@
...
@@ -7,7 +7,7 @@
#define TOPIC "/sys/a1OYuSBt23u/aIqEbWno8yDdsjCX15iq/thing/service/property/set"
#define TOPIC "/sys/a1OYuSBt23u/aIqEbWno8yDdsjCX15iq/thing/service/property/set"
#define PAYLOAD "Hello cwc World!"
#define PAYLOAD "Hello cwc World!"
#define QOS
2
#define QOS
0
#define TIMEOUT 10000L
#define TIMEOUT 10000L
#define USRNAME "hangzhou_gateway "
#define USRNAME "hangzhou_gateway "
#define PASSWORD "2ca1442865ff4cb99870f60f2c646190"
#define PASSWORD "2ca1442865ff4cb99870f60f2c646190"
...
...
midware/midware/dm/kk_dm_mng.c
View file @
fc3fe0ee
...
@@ -88,7 +88,7 @@ static int _dm_mgr_next_devid(void)
...
@@ -88,7 +88,7 @@ static int _dm_mgr_next_devid(void)
return
ctx
->
global_devid
++
;
return
ctx
->
global_devid
++
;
}
}
static
int
_dm_init_tsl_params
(
int
devId
)
static
int
_dm_init_tsl_params
(
kk_tsl_t
*
dev_shadow
)
{
{
int
res
=
0
;
int
res
=
0
;
char
version
[
VERSION_MAXLEN
]
=
{
0
};
char
version
[
VERSION_MAXLEN
]
=
{
0
};
...
@@ -99,7 +99,7 @@ static int _dm_init_tsl_params(int devId)
...
@@ -99,7 +99,7 @@ static int _dm_init_tsl_params(int devId)
/*******set version***********/
/*******set version***********/
HAL_GetVersion
(
version
);
HAL_GetVersion
(
version
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
dev
Id
,
KK_TSL_VERSION_IDENTIFIER
,
NULL
,
version
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
dev
_shadow
,
KK_TSL_VERSION_IDENTIFIER
,
NULL
,
version
);
if
(
res
!=
SUCCESS_RETURN
)
if
(
res
!=
SUCCESS_RETURN
)
{
{
ERROR_PRINT
(
"[%s][%d] res:%d
\n
"
,
__FUNCTION__
,
__LINE__
,
res
);
ERROR_PRINT
(
"[%s][%d] res:%d
\n
"
,
__FUNCTION__
,
__LINE__
,
res
);
...
@@ -107,12 +107,12 @@ static int _dm_init_tsl_params(int devId)
...
@@ -107,12 +107,12 @@ static int _dm_init_tsl_params(int devId)
/*******set IP*************/
/*******set IP*************/
//HAL_Get_IP(s_IP,NULL);
//HAL_Get_IP(s_IP,NULL);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
dev
Id
,
KK_TSL_CCU_LANIP_IDENTIFIER
,
NULL
,
"0.0.0.0"
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
dev
_shadow
,
KK_TSL_CCU_LANIP_IDENTIFIER
,
NULL
,
"0.0.0.0"
);
if
(
res
!=
SUCCESS_RETURN
)
if
(
res
!=
SUCCESS_RETURN
)
{
{
ERROR_PRINT
(
"[%s][%d] res:%d
\n
"
,
__FUNCTION__
,
__LINE__
,
res
);
ERROR_PRINT
(
"[%s][%d] res:%d
\n
"
,
__FUNCTION__
,
__LINE__
,
res
);
}
}
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
dev
Id
,
KK_TSL_CCU_WANIP_IDENTIFIER
,
NULL
,
"0.0.0.0"
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
dev
_shadow
,
KK_TSL_CCU_WANIP_IDENTIFIER
,
NULL
,
"0.0.0.0"
);
if
(
res
!=
SUCCESS_RETURN
)
if
(
res
!=
SUCCESS_RETURN
)
{
{
ERROR_PRINT
(
"[%s][%d] res:%d
\n
"
,
__FUNCTION__
,
__LINE__
,
res
);
ERROR_PRINT
(
"[%s][%d] res:%d
\n
"
,
__FUNCTION__
,
__LINE__
,
res
);
...
@@ -120,28 +120,28 @@ static int _dm_init_tsl_params(int devId)
...
@@ -120,28 +120,28 @@ static int _dm_init_tsl_params(int devId)
/*******set MAC*************/
/*******set MAC*************/
HAL_Get_mac
(
s_mac
);
HAL_Get_mac
(
s_mac
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
dev
Id
,
KK_TSL_GATAWAY_MAC_IDENTIFIER
,
NULL
,
s_mac
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
dev
_shadow
,
KK_TSL_GATAWAY_MAC_IDENTIFIER
,
NULL
,
s_mac
);
if
(
res
!=
SUCCESS_RETURN
)
if
(
res
!=
SUCCESS_RETURN
)
{
{
ERROR_PRINT
(
"[%s][%d] res:%d
\n
"
,
__FUNCTION__
,
__LINE__
,
res
);
ERROR_PRINT
(
"[%s][%d] res:%d
\n
"
,
__FUNCTION__
,
__LINE__
,
res
);
}
}
int
wanState
=
0
;
int
wanState
=
0
;
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
dev
Id
,
KK_TSL_CCU_WANSTATE_IDENTIFIER
,
&
wanState
,
NULL
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
dev
_shadow
,
KK_TSL_CCU_WANSTATE_IDENTIFIER
,
&
wanState
,
NULL
);
if
(
res
!=
SUCCESS_RETURN
)
if
(
res
!=
SUCCESS_RETURN
)
{
{
ERROR_PRINT
(
"[%s][%d] res:%d
\n
"
,
__FUNCTION__
,
__LINE__
,
res
);
ERROR_PRINT
(
"[%s][%d] res:%d
\n
"
,
__FUNCTION__
,
__LINE__
,
res
);
}
}
int
IOTCloudState
=
0
;
int
IOTCloudState
=
0
;
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
dev
Id
,
KK_TSL_CCU_IOTCLOUD_IDENTIFIER
,
&
IOTCloudState
,
NULL
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
dev
_shadow
,
KK_TSL_CCU_IOTCLOUD_IDENTIFIER
,
&
IOTCloudState
,
NULL
);
if
(
res
!=
SUCCESS_RETURN
)
if
(
res
!=
SUCCESS_RETURN
)
{
{
ERROR_PRINT
(
"[%s][%d] res:%d
\n
"
,
__FUNCTION__
,
__LINE__
,
res
);
ERROR_PRINT
(
"[%s][%d] res:%d
\n
"
,
__FUNCTION__
,
__LINE__
,
res
);
}
}
/*******set sn*************/
/*******set sn*************/
HAL_Get_SN
(
s_SN
);
HAL_Get_SN
(
s_SN
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
dev
Id
,
KK_TSL_GATAWAY_SN_IDENTIFIER
,
NULL
,
s_SN
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
dev
_shadow
,
KK_TSL_GATAWAY_SN_IDENTIFIER
,
NULL
,
s_SN
);
if
(
res
!=
SUCCESS_RETURN
)
if
(
res
!=
SUCCESS_RETURN
)
{
{
ERROR_PRINT
(
"[%s][%d] res:%d
\n
"
,
__FUNCTION__
,
__LINE__
,
res
);
ERROR_PRINT
(
"[%s][%d] res:%d
\n
"
,
__FUNCTION__
,
__LINE__
,
res
);
...
@@ -229,7 +229,7 @@ int dm_mgr_device_create(_IN_ int dev_type,_IN_ char productCode[PRODUCT_CODE_MA
...
@@ -229,7 +229,7 @@ int dm_mgr_device_create(_IN_ int dev_type,_IN_ char productCode[PRODUCT_CODE_MA
list_add_tail
(
&
node
->
linked_list
,
&
ctx
->
dev_list
);
list_add_tail
(
&
node
->
linked_list
,
&
ctx
->
dev_list
);
if
(
dev_type
==
KK_DM_DEVICE_CCU
){
if
(
dev_type
==
KK_DM_DEVICE_CCU
){
//_dm_init_tsl_params(node->devid);
_dm_init_tsl_params
(
node
->
dev_shadow
);
}
}
if
(
devid
)
{
if
(
devid
)
{
...
@@ -280,6 +280,25 @@ int dm_mgr_get_devicetype_by_devicecode(_IN_ char deviceCode[DEVICE_CODE_MAXLEN]
...
@@ -280,6 +280,25 @@ int dm_mgr_get_devicetype_by_devicecode(_IN_ char deviceCode[DEVICE_CODE_MAXLEN]
ERROR_PRINT
(
"Device Not Found, deviceCode: %s
\n
"
,
deviceCode
);
ERROR_PRINT
(
"Device Not Found, deviceCode: %s
\n
"
,
deviceCode
);
return
FAIL_RETURN
;
return
FAIL_RETURN
;
}
}
int
dm_mgr_get_device_shadow_by_devicecode
(
_IN_
char
deviceCode
[
DEVICE_CODE_MAXLEN
],
_OU_
kk_tsl_t
**
shadow
)
{
dm_mgr_ctx
*
ctx
=
_dm_mgr_get_ctx
();
dm_mgr_dev_node_t
*
search_node
=
NULL
;
list_for_each_entry
(
search_node
,
&
ctx
->
dev_list
,
linked_list
,
dm_mgr_dev_node_t
)
{
if
((
strlen
(
search_node
->
deviceCode
)
==
strlen
(
deviceCode
))
&&
(
memcmp
(
search_node
->
deviceCode
,
deviceCode
,
strlen
(
deviceCode
))
==
0
))
{
/* dm_log_debug("Device Found, Product Key: %s, Device Name: %s", product_key, device_name); */
if
(
shadow
)
{
*
shadow
=
search_node
->
dev_shadow
;
}
return
SUCCESS_RETURN
;
}
}
ERROR_PRINT
(
"Device Not Found, deviceCode: %s
\n
"
,
deviceCode
);
return
FAIL_RETURN
;
}
int
dm_mgr_get_device_by_devicecode
(
_IN_
char
deviceCode
[
DEVICE_CODE_MAXLEN
],
_OU_
dm_mgr_dev_node_t
**
node
)
int
dm_mgr_get_device_by_devicecode
(
_IN_
char
deviceCode
[
DEVICE_CODE_MAXLEN
],
_OU_
dm_mgr_dev_node_t
**
node
)
...
@@ -301,6 +320,8 @@ int dm_mgr_get_device_by_devicecode(_IN_ char deviceCode[DEVICE_CODE_MAXLEN], _O
...
@@ -301,6 +320,8 @@ int dm_mgr_get_device_by_devicecode(_IN_ char deviceCode[DEVICE_CODE_MAXLEN], _O
ERROR_PRINT
(
"Device Not Found, deviceCode: %s
\n
"
,
deviceCode
);
ERROR_PRINT
(
"Device Not Found, deviceCode: %s
\n
"
,
deviceCode
);
return
FAIL_RETURN
;
return
FAIL_RETURN
;
}
}
int
dm_mgr_update_timestamp_by_devicecode
(
_IN_
char
deviceCode
[
DEVICE_CODE_MAXLEN
],
uint64_t
timestamp
)
int
dm_mgr_update_timestamp_by_devicecode
(
_IN_
char
deviceCode
[
DEVICE_CODE_MAXLEN
],
uint64_t
timestamp
)
{
{
dm_mgr_ctx
*
ctx
=
_dm_mgr_get_ctx
();
dm_mgr_ctx
*
ctx
=
_dm_mgr_get_ctx
();
...
@@ -421,7 +442,7 @@ int dm_mgr_init(void)
...
@@ -421,7 +442,7 @@ int dm_mgr_init(void)
goto
ERROR
;
goto
ERROR
;
}
}
else
{
else
{
_dm_init_tsl_params
(
devId
);
kk_property_db_update
(
"CCU_66666"
);
kk_property_db_update
(
"CCU_66666"
);
}
}
...
...
midware/midware/dm/kk_dm_msg.c
View file @
fc3fe0ee
...
@@ -738,11 +738,78 @@ int dm_msg_thing_property_set_reply(char deviceCode[DEVICE_CODE_MAXLEN],char *pa
...
@@ -738,11 +738,78 @@ int dm_msg_thing_property_set_reply(char deviceCode[DEVICE_CODE_MAXLEN],char *pa
dm_msg_response
(
&
request
,
&
response
,
"{}"
,
strlen
(
"{}"
),
NULL
);
dm_msg_response
(
&
request
,
&
response
,
"{}"
,
strlen
(
"{}"
),
NULL
);
return
SUCCESS_RETURN
;
return
SUCCESS_RETURN
;
}
}
int
dm_msg_thing_event_post
(
const
char
*
deviceCode
,
const
char
*
identifier
)
{
int
res
=
0
;
int
nums
=
0
;
int
idx
=
0
;
char
*
payload
=
NULL
;
dm_mgr_dev_node_t
*
node
=
NULL
;
void
*
event
=
NULL
;
char
*
method
=
NULL
;
if
(
deviceCode
==
NULL
){
return
FAIL_RETURN
;
}
res
=
dm_mgr_get_device_by_devicecode
(
deviceCode
,
&
node
);
if
(
res
!=
SUCCESS_RETURN
)
{
return
FAIL_RETURN
;
}
payload
=
kk_tsl_get_post_event_str
(
node
->
dev_shadow
,
identifier
,
strlen
(
identifier
));
if
(
payload
!=
NULL
){
res
=
kk_tsl_get_event_by_identifier
(
node
->
dev_shadow
,
identifier
,
&
event
);
if
(
res
!=
SUCCESS_RETURN
)
{
free
(
payload
);
return
FAIL_RETURN
;
}
res
=
kk_tsl_get_event_method
(
event
,
&
method
);
if
(
res
!=
SUCCESS_RETURN
)
{
free
(
payload
);
return
FAIL_RETURN
;
}
dm_mgr_upstream_thing_event_post
(
node
->
devid
,
identifier
,
strlen
(
identifier
),
method
,
payload
,
strlen
(
payload
));
free
(
method
);
method
=
NULL
;
free
(
payload
);
payload
=
NULL
;
}
return
SUCCESS_RETURN
;
}
int
dm_msg_thing_service_post
(
const
char
*
deviceCode
,
const
char
*
identifier
,
int
response_id
,
int
code
)
{
int
res
=
0
;
int
nums
=
0
;
int
idx
=
0
;
char
*
payload
=
NULL
;
dm_mgr_dev_node_t
*
node
=
NULL
;
if
(
deviceCode
==
NULL
){
return
FAIL_RETURN
;
}
res
=
dm_mgr_get_device_by_devicecode
(
deviceCode
,
&
node
);
if
(
res
!=
SUCCESS_RETURN
)
{
return
FAIL_RETURN
;
}
payload
=
kk_tsl_get_post_service_str
(
node
->
dev_shadow
,
identifier
);
if
(
payload
!=
NULL
){
dm_mgr_deprecated_upstream_thing_service_response
(
node
->
devid
,
response_id
,
code
,
identifier
,
strlen
(
identifier
),
payload
,
strlen
(
payload
));
free
(
payload
);
payload
=
NULL
;
}
return
SUCCESS_RETURN
;
}
int
dm_msg_thing_property_post_all
(
char
*
deviceCode
)
int
dm_msg_thing_property_post_all
(
char
*
deviceCode
)
{
{
int
res
=
0
;
int
res
=
0
;
int
nums
=
0
;
int
nums
=
0
;
int
idx
=
0
;
int
idx
=
0
;
char
*
payload
=
NULL
;
dm_mgr_dev_node_t
*
node
=
NULL
;
dm_mgr_dev_node_t
*
node
=
NULL
;
if
(
deviceCode
==
NULL
){
if
(
deviceCode
==
NULL
){
...
@@ -753,7 +820,12 @@ int dm_msg_thing_property_post_all(char *deviceCode)
...
@@ -753,7 +820,12 @@ int dm_msg_thing_property_post_all(char *deviceCode)
if
(
res
!=
SUCCESS_RETURN
)
{
if
(
res
!=
SUCCESS_RETURN
)
{
return
FAIL_RETURN
;
return
FAIL_RETURN
;
}
}
kk_tsl_post_property
(
node
->
devid
,
NULL
,
1
);
//here need async post
payload
=
kk_tsl_get_post_property_str
(
node
->
dev_shadow
,
NULL
);
//here need async post
if
(
payload
!=
NULL
){
dm_mgr_upstream_thing_property_post
(
node
->
devid
,
payload
,
strlen
(
payload
),
1
);
free
(
payload
);
payload
=
NULL
;
}
return
SUCCESS_RETURN
;
return
SUCCESS_RETURN
;
}
}
...
@@ -784,7 +856,6 @@ int dm_msg_thing_property_post_by_identify(char *deviceCode,cJSON *params)
...
@@ -784,7 +856,6 @@ int dm_msg_thing_property_post_by_identify(char *deviceCode,cJSON *params)
}
}
propertyItem
=
cJSON_GetObjectItem
(
params
,
property
->
identifier
);
propertyItem
=
cJSON_GetObjectItem
(
params
,
property
->
identifier
);
if
(
propertyItem
!=
NULL
){
if
(
propertyItem
!=
NULL
){
//kk_tsl_post_property(node->devid,property->identifier,0);
/*update the db data */
/*update the db data */
if
(
property
->
data_value
.
type
==
KK_TSL_DATA_TYPE_INT
||
if
(
property
->
data_value
.
type
==
KK_TSL_DATA_TYPE_INT
||
...
...
midware/midware/dm/kk_linkkit.c
View file @
fc3fe0ee
...
@@ -298,19 +298,20 @@ static void _iotx_linkkit_event_callback(iotx_dm_event_types_t type, char *data)
...
@@ -298,19 +298,20 @@ static void _iotx_linkkit_event_callback(iotx_dm_event_types_t type, char *data)
INFO_PRINT
(
"property set
\n
"
);
INFO_PRINT
(
"property set
\n
"
);
cJSON
*
deviceCode
=
cJSON_GetObjectItem
(
info_root
,
MSG_DEVICE_CODE_STR
);
cJSON
*
deviceCode
=
cJSON_GetObjectItem
(
info_root
,
MSG_DEVICE_CODE_STR
);
dm_msg_thing_property_set_reply
(
deviceCode
->
valuestring
,
payload_Str
,
strlen
(
payload_Str
),
NULL
);
dm_msg_thing_property_set_reply
(
deviceCode
->
valuestring
,
payload_Str
,
strlen
(
payload_Str
),
NULL
);
//kk_tsl_service_property_set(topic->valuestring, payload->valuestring, strlen(payload->valuestring), NULL);
}
else
if
(
strstr
(
typeJson
->
valuestring
,
KK_THING_CLOUDSTATE_MSG
)){
}
else
if
(
strstr
(
typeJson
->
valuestring
,
KK_THING_CLOUDSTATE_MSG
)){
INFO_PRINT
(
"cloud state notify
\n
"
);
INFO_PRINT
(
"cloud state notify
\n
"
);
s_CloudStatusRecv
=
1
;
s_CloudStatusRecv
=
1
;
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
paramStr
=
cJSON_GetObjectItem
(
payload
,
MSG_PARAMS_STR
);
cJSON
*
state
=
cJSON_GetObjectItem
(
paramStr
,
MSG_IOTClOUDSTATE_STR
);
cJSON
*
state
=
cJSON_GetObjectItem
(
paramStr
,
MSG_IOTClOUDSTATE_STR
);
s_CloudStatus
=
atoi
(
state
->
valuestring
);
s_CloudStatus
=
atoi
(
state
->
valuestring
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
0
,
KK_TSL_CCU_WANSTATE_IDENTIFIER
,
&
s_CloudStatus
,
NULL
);
dm_mgr_dev_node_t
*
node
=
NULL
;
dm_mgr_search_dev_by_devid
(
KK_DM_DEVICE_CCU_DEVICEID
,
&
node
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
node
->
dev_shadow
,
KK_TSL_CCU_WANSTATE_IDENTIFIER
,
&
s_CloudStatus
,
NULL
);
if
(
res
!=
SUCCESS_RETURN
)
if
(
res
!=
SUCCESS_RETURN
)
{
{
ERROR_PRINT
(
"[%s][%d] res:%d
\n
"
,
__FUNCTION__
,
__LINE__
,
res
);
ERROR_PRINT
(
"[%s][%d] res:%d
\n
"
,
__FUNCTION__
,
__LINE__
,
res
);
}
}
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
0
,
KK_TSL_CCU_IOTCLOUD_IDENTIFIER
,
&
s_CloudStatus
,
NULL
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
node
->
dev_shadow
,
KK_TSL_CCU_IOTCLOUD_IDENTIFIER
,
&
s_CloudStatus
,
NULL
);
if
(
res
!=
SUCCESS_RETURN
)
if
(
res
!=
SUCCESS_RETURN
)
{
{
ERROR_PRINT
(
"[%s][%d] res:%d
\n
"
,
__FUNCTION__
,
__LINE__
,
res
);
ERROR_PRINT
(
"[%s][%d] res:%d
\n
"
,
__FUNCTION__
,
__LINE__
,
res
);
...
@@ -319,7 +320,12 @@ static void _iotx_linkkit_event_callback(iotx_dm_event_types_t type, char *data)
...
@@ -319,7 +320,12 @@ static void _iotx_linkkit_event_callback(iotx_dm_event_types_t type, char *data)
if
(
s_CloudStatus
){
if
(
s_CloudStatus
){
iotx_dm_dev_online
(
KK_DM_DEVICE_CCU_DEVICEID
);
//first online,report the online status
iotx_dm_dev_online
(
KK_DM_DEVICE_CCU_DEVICEID
);
//first online,report the online status
usleep
(
200000
);
usleep
(
200000
);
kk_tsl_post_property
(
KK_DM_DEVICE_CCU_DEVICEID
,
NULL
,
0
);
char
*
payload_property
=
kk_tsl_get_post_property_str
(
node
->
dev_shadow
,
NULL
);
if
(
payload_property
!=
NULL
){
dm_mgr_upstream_thing_property_post
(
node
->
devid
,
payload_property
,
strlen
(
payload_property
),
0
);
free
(
payload_property
);
payload_property
=
NULL
;
}
}
}
}
else
if
(
strstr
(
typeJson
->
valuestring
,
KK_THING_OTA_DEVICE_UPGRADE
)){
}
else
if
(
strstr
(
typeJson
->
valuestring
,
KK_THING_OTA_DEVICE_UPGRADE
)){
INFO_PRINT
(
"ota upgrade...
\n
"
);
INFO_PRINT
(
"ota upgrade...
\n
"
);
...
...
midware/midware/dm/kk_property_db.c
View file @
fc3fe0ee
...
@@ -328,11 +328,12 @@ int kk_property_sync_values(const char *deviceCode)
...
@@ -328,11 +328,12 @@ int kk_property_sync_values(const char *deviceCode)
char
*
pIdentifier
=
NULL
;
char
*
pIdentifier
=
NULL
;
char
*
valueStr
=
NULL
;
char
*
valueStr
=
NULL
;
int
valueType
=
0
;
int
valueType
=
0
;
int
devId
=
0
;
kk_property_db_ctx_t
*
ctx
=
_kk_property_db_get_ctx
();
kk_property_db_ctx_t
*
ctx
=
_kk_property_db_get_ctx
();
char
*
searchCmd
=
"select * from PropertiesInfo;"
;
char
*
searchCmd
=
"select * from PropertiesInfo;"
;
dm_mgr_dev_node_t
*
node
=
NULL
;
dm_mgr_get_dev
Id_by_devicecode
(
deviceCode
,
&
devId
);
dm_mgr_get_dev
ice_by_devicecode
(
deviceCode
,
&
node
);
sqlCmd
=
sqlite3_mprintf
(
searchCmd
,
deviceCode
);
sqlCmd
=
sqlite3_mprintf
(
searchCmd
,
deviceCode
);
...
@@ -351,18 +352,18 @@ int kk_property_sync_values(const char *deviceCode)
...
@@ -351,18 +352,18 @@ int kk_property_sync_values(const char *deviceCode)
valueType
==
KK_TSL_DATA_TYPE_ENUM
||
valueType
==
KK_TSL_DATA_TYPE_ENUM
||
valueType
==
KK_TSL_DATA_TYPE_BOOL
){
valueType
==
KK_TSL_DATA_TYPE_BOOL
){
int
value_int
=
atoi
(
valueStr
);
int
value_int
=
atoi
(
valueStr
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
devId
,
pIdentifier
,
&
value_int
,
NULL
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
node
->
dev_shadow
,
pIdentifier
,
&
value_int
,
NULL
);
}
}
else
if
(
valueType
==
KK_TSL_DATA_TYPE_FLOAT
){
else
if
(
valueType
==
KK_TSL_DATA_TYPE_FLOAT
){
float
value_float
=
atoi
(
valueStr
);
float
value_float
=
atoi
(
valueStr
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
devId
,
pIdentifier
,
&
value_float
,
NULL
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
node
->
dev_shadow
,
pIdentifier
,
&
value_float
,
NULL
);
}
}
else
if
(
valueType
==
KK_TSL_DATA_TYPE_DOUBLE
){
else
if
(
valueType
==
KK_TSL_DATA_TYPE_DOUBLE
){
double
value_double
=
atoi
(
valueStr
);
double
value_double
=
atoi
(
valueStr
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
devId
,
pIdentifier
,
&
value_double
,
NULL
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
node
->
dev_shadow
,
pIdentifier
,
&
value_double
,
NULL
);
}
}
else
{
else
{
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
devId
,
pIdentifier
,
NULL
,
valueStr
);
res
=
kk_tsl_set_value
(
kk_tsl_set_property_value
,
node
->
dev_shadow
,
pIdentifier
,
NULL
,
valueStr
);
}
}
if
(
res
!=
SUCCESS_RETURN
)
if
(
res
!=
SUCCESS_RETURN
)
{
{
...
...
midware/midware/dm/kk_wlist_mng.c
deleted
100644 → 0
View file @
dbaa62f2
This diff is collapsed.
Click to expand it.
midware/midware/dm/kk_wlist_mng.h
deleted
100644 → 0
View file @
dbaa62f2
#ifndef __KK_WHITELIST_MNG_H__
#define __KK_WHITELIST_MNG_H__
#include "kk_tsl_common.h"
typedef
struct
{
char
device_mac
[
DEVICE_MAC_MAXLEN
];
char
product_id
[
PRODUCT_TYPE_MAXLEN
];
char
device_sn
[
DEVICE_SN_MAXLEN
];
char
device_id
[
DEVICE_CODE_MAXLEN
];
int
index
;
}
kk_wlist_dev_t
;
int
kk_wlist_init
(
void
);
int
kk_wlist_status_open
(
int
isOpen
);
int
kk_add_wlist
(
kk_wlist_dev_t
*
wlist_dev
);
int
kk_get_wlist_num
(
void
);
int
kk_delete_wlist_byMac
(
const
char
*
device_mac
);
#endif
\ No newline at end of file
midware/midware/midware.c
View file @
fc3fe0ee
...
@@ -223,7 +223,9 @@ void kk_platMsg_handle(void* data, char* chalMark){
...
@@ -223,7 +223,9 @@ void kk_platMsg_handle(void* data, char* chalMark){
}
else
if
(
strstr
(
msgType
->
valuestring
,
KK_THING_PROPERTY_POST
)
!=
NULL
){
}
else
if
(
strstr
(
msgType
->
valuestring
,
KK_THING_PROPERTY_POST
)
!=
NULL
){
INFO_PRINT
(
"save property and send to cloud
\n
"
);
INFO_PRINT
(
"save property and send to cloud
\n
"
);
char
*
outstr
=
cJSON_Print
(
payload
);
char
*
outstr
=
cJSON_Print
(
payload
);
kk_tsl_property_set_by_devicecode
(
info_dcode
->
valuestring
,
outstr
,
strlen
(
outstr
)
+
1
);
kk_tsl_t
*
dev_shadow
=
NULL
;
dm_mgr_get_device_shadow_by_devicecode
(
info_dcode
->
valuestring
,
&
dev_shadow
);
kk_tsl_property_set_by_shadow
(
dev_shadow
,
outstr
,
strlen
(
outstr
)
+
1
);
dm_msg_thing_property_post_by_identify
(
info_dcode
->
valuestring
,
jsonPay
);
dm_msg_thing_property_post_by_identify
(
info_dcode
->
valuestring
,
jsonPay
);
free
(
outstr
);
free
(
outstr
);
...
@@ -236,7 +238,6 @@ void kk_platMsg_handle(void* data, char* chalMark){
...
@@ -236,7 +238,6 @@ void kk_platMsg_handle(void* data, char* chalMark){
}
else
{
}
else
{
INFO_PRINT
(
"kk_platMsg_handle data: don't handle it [%s]
\n
"
,
data
);
INFO_PRINT
(
"kk_platMsg_handle data: don't handle it [%s]
\n
"
,
data
);
//kk_tsl_service_property_set(topic->valuestring, payload->valuestring, strlen(payload->valuestring), NULL);
}
}
error:
error:
cJSON_Delete
(
json
);
cJSON_Delete
(
json
);
...
@@ -580,6 +581,8 @@ void *ccu_property_monitor(void *args)
...
@@ -580,6 +581,8 @@ void *ccu_property_monitor(void *args)
int
res
=
0
;
int
res
=
0
;
int
needReport
=
0
;
int
needReport
=
0
;
int
time_second
=
60
;
int
time_second
=
60
;
dm_mgr_dev_node_t
*
node
=
NULL
;
dm_mgr_search_dev_by_devid
(
KK_DM_DEVICE_CCU_DEVICEID
,
&
node
);
while
(
mid_ctx
->
g_ccuProChg_dispatch_thread_running
)
{
while
(
mid_ctx
->
g_ccuProChg_dispatch_thread_running
)
{
if
(
kk_get_cloud_recv_status
()
==
0
){
if
(
kk_get_cloud_recv_status
()
==
0
){
...
@@ -587,15 +590,15 @@ void *ccu_property_monitor(void *args)
...
@@ -587,15 +590,15 @@ void *ccu_property_monitor(void *args)
sleep
(
10
);
sleep
(
10
);
continue
;
continue
;
}
}
//dm_ota_yield(MID_YIELD_TIMEOUT_MS);
HAL_Get_IP
(
s_IP
,
NULL
);
HAL_Get_IP
(
s_IP
,
NULL
);
res
=
kk_tsl_get_value
(
kk_tsl_get_property_value
,
0
,
KK_TSL_CCU_WANIP_IDENTIFIER
,
s_IP_TSL
,
NULL
);
res
=
kk_tsl_get_value
(
kk_tsl_get_property_value
,
node
->
dev_shadow
,
KK_TSL_CCU_WANIP_IDENTIFIER
,
s_IP_TSL
,
NULL
);
if
(
res
!=
SUCCESS_RETURN
){
if
(
res
!=
SUCCESS_RETURN
){
ERROR_PRINT
(
"kk_tsl_get_value Failed
\n
"
);
ERROR_PRINT
(
"kk_tsl_get_value Failed
\n
"
);
}
}
else
{
else
{
if
(
strcmp
(
s_IP
,
s_IP_TSL
)){
if
(
strcmp
(
s_IP
,
s_IP_TSL
)){
kk_tsl_set_value
(
kk_tsl_set_property_value
,
0
,
KK_TSL_CCU_WANIP_IDENTIFIER
,
NULL
,
s_IP
);
kk_tsl_set_value
(
kk_tsl_set_property_value
,
node
->
dev_shadow
,
KK_TSL_CCU_WANIP_IDENTIFIER
,
NULL
,
s_IP
);
INFO_PRINT
(
"current ip:%s,before ip:%s
\n
"
,
s_IP
,
s_IP_TSL
);
INFO_PRINT
(
"current ip:%s,before ip:%s
\n
"
,
s_IP
,
s_IP_TSL
);
kk_property_db_update
(
"CCU_66666"
);
kk_property_db_update
(
"CCU_66666"
);
needReport
=
1
;
needReport
=
1
;
...
@@ -604,7 +607,12 @@ void *ccu_property_monitor(void *args)
...
@@ -604,7 +607,12 @@ void *ccu_property_monitor(void *args)
if
(
needReport
&&
(
kk_get_cloudstatus
()
==
1
)){
if
(
needReport
&&
(
kk_get_cloudstatus
()
==
1
)){
needReport
=
0
;
needReport
=
0
;
kk_tsl_post_property
(
KK_DM_DEVICE_CCU_DEVICEID
,
NULL
,
0
);
char
*
postStr
=
kk_tsl_get_post_property_str
(
node
->
dev_shadow
,
NULL
);
if
(
postStr
!=
NULL
){
dm_mgr_upstream_thing_property_post
(
node
->
devid
,
postStr
,
strlen
(
postStr
),
0
);
free
(
postStr
);
postStr
=
NULL
;
}
}
}
sleep
(
time_second
);
sleep
(
time_second
);
}
}
...
...
midware/tsl/tsl_handle/kk_tsl_api.c
View file @
fc3fe0ee
This diff is collapsed.
Click to expand it.
midware/tsl/tsl_handle/kk_tsl_api.h
View file @
fc3fe0ee
...
@@ -66,22 +66,22 @@ typedef enum {
...
@@ -66,22 +66,22 @@ typedef enum {
}
kk_tsl_get_t
;
}
kk_tsl_get_t
;
typedef
struct
{
typedef
struct
{
int
devid
;
kk_tsl_t
*
shadow
;
lite_cjson_item_t
*
lite
;
lite_cjson_item_t
*
lite
;
}
dm_api_property_t
;
}
dm_api_property_t
;
extern
int
kk_tsl_api_init
(
void
);
extern
int
kk_tsl_api_init
(
void
);
extern
int
kk_tsl_set_value
(
kk_tsl_set_t
set
,
int
devId
,
const
char
*
identifier
,
\
extern
int
kk_tsl_set_value
(
kk_tsl_set_t
set
,
kk_tsl_t
*
dev_shadow
,
const
char
*
identifier
,
\
const
void
*
value
,
\
const
void
*
value
,
\
const
char
*
value_str
);
const
char
*
value_str
);
extern
int
kk_tsl_get_value
(
kk_tsl_get_t
method_get
,
int
devId
,
const
char
*
identifier
,
\
extern
int
kk_tsl_get_value
(
kk_tsl_get_t
method_get
,
kk_tsl_t
*
dev_shadow
,
const
char
*
identifier
,
\
void
*
value
,
\
void
*
value
,
\
char
**
value_str
);
char
**
value_str
);
extern
int
kk_msg_uri_parse_pkdn
(
_IN_
char
*
uri
,
_IN_
int
uri_len
,
_IN_
int
start_deli
,
_IN_
int
end_deli
,
\
extern
int
kk_msg_uri_parse_pkdn
(
_IN_
char
*
uri
,
_IN_
int
uri_len
,
_IN_
int
start_deli
,
_IN_
int
end_deli
,
\
_OU_
char
productType
[
PRODUCT_TYPE_MAXLEN
],
_OU_
char
deviceCode
[
DEVICE_CODE_MAXLEN
]);
_OU_
char
productType
[
PRODUCT_TYPE_MAXLEN
],
_OU_
char
deviceCode
[
DEVICE_CODE_MAXLEN
]);
extern
int
kk_tsl_service_property_set
(
const
char
*
topic
,
const
char
*
payload
,
unsigned
int
payload_len
,
void
*
context
);
extern
char
*
kk_tsl_get_post_property_str
(
kk_tsl_t
*
dev_shadow
,
const
char
*
property_identifier
);
extern
int
kk_tsl_post_property
(
int
devId
,
const
char
*
property_identifier
,
int
isAsync
);
extern
char
*
kk_tsl_get_post_event_str
(
_IN_
kk_tsl_t
*
dev_shadow
,
_IN_
char
*
identifier
,
_IN_
int
identifier_len
);
extern
int
kk_tsl_post_event
(
int
devId
,
const
char
*
event_identifier
);
extern
char
*
kk_tsl_get_post_service_str
(
kk_tsl_t
*
dev_shadow
,
const
char
*
service_identifier
);
extern
int
kk_tsl_post_service
(
int
devId
,
const
char
*
service_identifier
,
int
response_id
,
int
code
);
#endif
#endif
midware/tsl/tsl_handle/kk_tsl_load.c
View file @
fc3fe0ee
...
@@ -3,7 +3,18 @@
...
@@ -3,7 +3,18 @@
#include <stdio.h>
#include <stdio.h>
#include "kk_tsl_common.h"
#include "kk_tsl_common.h"
#include "kk_dm_mng.h"
#include "kk_dm_mng.h"
#ifndef _ZLOG_
#undef INFO_PRINT
#undef WARNING_PRINT
#undef ERROR_PRINT
#define INFO_PRINT printf
#define WARNING_PRINT printf
#define ERROR_PRINT printf
#else
#include "kk_log.h"
#include "kk_log.h"
#endif
#define TSL_SUBDEVICE_PATH_FILE "/home/tsl/product_%s.json"
#define TSL_SUBDEVICE_PATH_FILE "/home/tsl/product_%s.json"
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment