mirror of
http://180.163.74.83:13000/zhangzhenghao/AP05.git
synced 2025-12-13 15:24:29 +00:00
jingdong first v2.1.1
This commit is contained in:
parent
ae491ab832
commit
b651108fc9
@ -22,13 +22,53 @@ AUX_SOURCE_DIRECTORY(escape_unescape DIR_SRC_ESCAPE_UNESCAPE)
|
|||||||
AUX_SOURCE_DIRECTORY(net_utils DIR_SRC_NET_UTILS)
|
AUX_SOURCE_DIRECTORY(net_utils DIR_SRC_NET_UTILS)
|
||||||
AUX_SOURCE_DIRECTORY(debug_print DIR_SRC_DEBUG_PRINT)
|
AUX_SOURCE_DIRECTORY(debug_print DIR_SRC_DEBUG_PRINT)
|
||||||
|
|
||||||
|
|
||||||
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)
|
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)
|
||||||
SET(MQTT_SRC_PATH ${CMAKE_CURRENT_LIST_DIR}/mqtt)
|
SET(MQTT_SRC_PATH ${CMAKE_CURRENT_LIST_DIR}/mqtt)
|
||||||
|
|
||||||
|
IF (PAHO_WITH_SSL)
|
||||||
|
SET(OPENSSL_SEARCH_PATH "/home/hyx/work/openssl/output" CACHE PATH "Directory containing OpenSSL libraries and includes")
|
||||||
|
|
||||||
|
IF (${CMAKE_SYSTEM_NAME} STREQUAL "Darwin")
|
||||||
|
SET(OPENSSL_SEARCH_PATH "/usr/local/opt/openssl")
|
||||||
|
ENDIF (${CMAKE_SYSTEM_NAME} STREQUAL "Darwin")
|
||||||
|
|
||||||
|
IF (WIN32)
|
||||||
|
SET(OPENSSL_SEARCH_PATH "C:/OpenSSL-Win64")
|
||||||
|
SET(OPENSSL_SEARCH_LIB_PATH "${OPENSSL_SEARCH_PATH}/lib64")
|
||||||
|
IF (DEFINED ENV{PAHO_WINDOWS_BUILD_BIT})
|
||||||
|
IF ($ENV{PAHO_WINDOWS_BUILD_BIT} STREQUAL "x86")
|
||||||
|
SET(OPENSSL_SEARCH_PATH "C:/OpenSSL-Win32")
|
||||||
|
SET(OPENSSL_SEARCH_LIB_PATH "${OPENSSL_SEARCH_PATH}/lib32")
|
||||||
|
ENDIF ()
|
||||||
|
ENDIF ()
|
||||||
|
ELSE()
|
||||||
|
SET(OPENSSL_SEARCH_LIB_PATH "${OPENSSL_SEARCH_PATH}/lib")
|
||||||
|
ENDIF ()
|
||||||
|
|
||||||
|
FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h
|
||||||
|
HINTS ${OPENSSL_SEARCH_PATH}/include)
|
||||||
|
FIND_LIBRARY(OPENSSL_LIB NAMES ssl libssl ssleay32
|
||||||
|
HINTS ${OPENSSL_SEARCH_PATH}/lib ${OPENSSL_SEARCH_LIB_PATH})
|
||||||
|
FIND_LIBRARY(OPENSSLCRYPTO_LIB NAMES crypto libcrypto libeay32
|
||||||
|
HINTS ${OPENSSL_SEARCH_PATH}/lib ${OPENSSL_SEARCH_LIB_PATH})
|
||||||
|
|
||||||
|
MESSAGE(STATUS "OpenSSL hints: ${OPENSSL_SEARCH_PATH}")
|
||||||
|
MESSAGE(STATUS "OpenSSL headers found at ${OPENSSL_INCLUDE_DIR}")
|
||||||
|
MESSAGE(STATUS "OpenSSL library found at ${OPENSSL_LIB}")
|
||||||
|
MESSAGE(STATUS "OpenSSL Crypto library found at ${OPENSSLCRYPTO_LIB}")
|
||||||
|
|
||||||
|
# INCLUDE_DIRECTORIES(
|
||||||
|
# ${OPENSSL_INCLUDE_DIR}
|
||||||
|
# )
|
||||||
|
add_definitions(-DOPENSSL=1)
|
||||||
|
ENDIF()
|
||||||
|
|
||||||
INCLUDE_DIRECTORIES(
|
INCLUDE_DIRECTORIES(
|
||||||
${CMAKE_CURRENT_LIST_DIR}/
|
${CMAKE_CURRENT_LIST_DIR}/
|
||||||
${CMAKE_BINARY_DIR}/
|
${CMAKE_BINARY_DIR}/
|
||||||
${MQTT_SRC_PATH}/
|
${MQTT_SRC_PATH}/
|
||||||
|
${OPENSSL_INCLUDE_DIR}/
|
||||||
${CMAKE_CURRENT_LIST_DIR}/uart_utils
|
${CMAKE_CURRENT_LIST_DIR}/uart_utils
|
||||||
${CMAKE_CURRENT_LIST_DIR}/uart_can
|
${CMAKE_CURRENT_LIST_DIR}/uart_can
|
||||||
${CMAKE_CURRENT_LIST_DIR}/queue
|
${CMAKE_CURRENT_LIST_DIR}/queue
|
||||||
@ -92,8 +132,8 @@ SET(SRC_TX_SERVER
|
|||||||
${CMAKE_CURRENT_LIST_DIR}/main.c
|
${CMAKE_CURRENT_LIST_DIR}/main.c
|
||||||
)
|
)
|
||||||
|
|
||||||
ADD_EXECUTABLE(tx_server ${SRC_TX_SERVER})
|
ADD_EXECUTABLE(jd_server ${SRC_TX_SERVER})
|
||||||
|
|
||||||
TARGET_LINK_LIBRARIES(tx_server pthread dl)
|
TARGET_LINK_LIBRARIES(jd_server pthread dl "-L/home/hyx/work/openssl/output/lib" "-lssl" "-lcrypto")
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
13
cp.sh
13
cp.sh
@ -1,7 +1,10 @@
|
|||||||
#sshpass -p "&Over#B0Ost!" scp ./start.sh root@10.10.10.101:/root/
|
#sshpass -p "&Over#B0Ost!" scp ./start.sh root@10.10.10.101:/root/
|
||||||
#sshpass -p "&Over#B0Ost!" scp ./output/bin/tx_server root@10.10.10.101:/root/
|
#sshpass -p "&Over#B0Ost!" scp ./output/bin/tx_server root@10.10.12.2:/root/
|
||||||
sshpass -p "&Over#B0Ost!" scp ./output/bin/tx_server root@10.10.10.101:/home/linaro/
|
#sshpass -p "&Over#B0Ost!" scp ./output/bin/tx_server root@10.10.10.101:/home/linaro/
|
||||||
#sshpass -p "PddloTSecPwdOnly!" scp ./output/bin/tx_server root@192.168.0.148:/home/linaro/
|
#sshpass -p "PddloTSecPwdOnly!" scp ./output/bin/tx_server root@192.168.0.148:/home/linaro/
|
||||||
#sshpass -p "PddloTSecPwdOnly!" scp ./output/bin/tx_server root@10.10.10.132:/root/
|
#sshpass -p "TxApPwd#2025!" scp ./output/bin/tx_server root@10.10.12.2:/root
|
||||||
#sshpass -p "PddloTSecPwdOnly!" scp ./start.sh root@10.10.10.225:/root/
|
#sshpass -p "TxApPwd#2025!" scp ./*.zip root@10.10.12.4:/root/ota
|
||||||
#sshpass -p "PddloTSecPwdOnly!" scp ./start.sh root@10.10.10.132:/root/
|
sshpass -p "TxApPwd#2025!" scp output/bin/jd_server root@10.10.12.2:/root
|
||||||
|
#sshpass -p "TxApPwd#2025!" scp tx_ota/*.bin root@10.10.12.4:/root/ota
|
||||||
|
#sshpass -p "PddloTSecPwdOnly!" scp ./output/bin/tx_server root@10.10.12.4:/root/
|
||||||
|
#sshpass -p "PddloTSecPwdOnly!" scp tx_ota/*.bin root@10.10.12.6:/root/ota
|
||||||
|
|||||||
21
d126ei4lj4cc00/ca.crt
Executable file
21
d126ei4lj4cc00/ca.crt
Executable file
@ -0,0 +1,21 @@
|
|||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIDYzCCAkugAwIBAgIJAIQKwCvFI20lMA0GCSqGSIb3DQEBDQUAMEcxGTAXBgNV
|
||||||
|
BAMMEHRoaW5ndGFsay5qZGwuY24xCzAJBgNVBAoMAkpEMRAwDgYDVQQIDAdCZWlq
|
||||||
|
aW5nMQswCQYDVQQGEwJDTjAgFw0yMTA0MjAwNzUyMzFaGA8yMTIxMDMyNzA3NTIz
|
||||||
|
MVowRzEZMBcGA1UEAwwQdGhpbmd0YWxrLmpkbC5jbjELMAkGA1UECgwCSkQxEDAO
|
||||||
|
BgNVBAgMB0JlaWppbmcxCzAJBgNVBAYTAkNOMIIBIjANBgkqhkiG9w0BAQEFAAOC
|
||||||
|
AQ8AMIIBCgKCAQEAtoSsg0Qdzr/3vVIVNVrL8dHQNzwJvEDIkMapXfZ+KNxgEvwP
|
||||||
|
G6Ym+XUwykQdM3MjPSVdX/vwWDkOOZKKI5Rn5XHgt3Yufc7aVjmsvLto3mBdStuz
|
||||||
|
z3rh7PMPkFpW4Ie3zm0PCMbEsa6dT/ApPKElMZI5q4OSPNMmBLw8iDd9FPhi43bQ
|
||||||
|
74gQHKNbPxpXaCzMgNFxm9nwHsP2muHyKWkX8ATMXa/lPEjnD8+0eAGxlo0VY0h8
|
||||||
|
tWeipk1KFHRIdLJMhYOprKxWPqdY/pzqIyYNuOBqriO1/9FmxPXENlyGF/OUyvZt
|
||||||
|
uu4UwiCvQ9eVlZuN3XCCvZUZFAf92qYGWSC57QIDAQABo1AwTjAdBgNVHQ4EFgQU
|
||||||
|
hfVGDZhSn0yMTs2ZRXhXLVpTRRwwHwYDVR0jBBgwFoAUhfVGDZhSn0yMTs2ZRXhX
|
||||||
|
LVpTRRwwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQ0FAAOCAQEAsZfBS1fn8vA5
|
||||||
|
DU/IzYSSEFMQbp15fgGXrhcw5cgssX4EkxgoJebs1zllNCTmuUuZfZOMVx2BOq7y
|
||||||
|
Av0pWXFv/8gGUY86ZCHdoXvqykQkLwfhBIRxuWjRycquHZaCtcM3rZtuHPvW1AfT
|
||||||
|
cTjC3HwXn05ISi5mbz2ibPrXODkaxDEJ8m83hCyXXOdoI0P7r3zSokSDSCgMQYvA
|
||||||
|
2N+bn+CdoRf46+xBSC2RHm7pssBtRDKTO/iOPeWuk+sKJ4piiZUzctuvxVh7OYno
|
||||||
|
HH8NmepyB0N9NTBrrpup3pgOFf9ot5B3y2OWH4n8Q7ddQGrmj7SuW1HTW3LIl/HF
|
||||||
|
tetXyNsX3w==
|
||||||
|
-----END CERTIFICATE-----
|
||||||
16
d126ei4lj4cc00/d126ei4lj4cc00.crt
Executable file
16
d126ei4lj4cc00/d126ei4lj4cc00.crt
Executable file
@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIDDTCCAfWgAwIBAgIHAycFFP4DADANBgkqhkiG9w0BAQsFADBHMRkwFwYDVQQDExB0aGluZ3Rh
|
||||||
|
bGsuamRsLmNuMQswCQYDVQQKEwJKRDEQMA4GA1UECBMHQmVpamluZzELMAkGA1UEBhMCQ04wIBcN
|
||||||
|
MjUwNDIzMDgyOTQ2WhgPMjA3NTA0MTEwODI5NDZaMEUxCzAJBgNVBAYTAkNOMRAwDgYDVQQIEwdC
|
||||||
|
ZWlqaW5nMQswCQYDVQQKEwJKRDEXMBUGA1UEAxMOZDEyNmVpNGxqNGNjMDAwggEiMA0GCSqGSIb3
|
||||||
|
DQEBAQUAA4IBDwAwggEKAoIBAQCcr3PanvsNozpBtKtmVv7w4/5DevWxR/XB2cyQO0jnzHsKUAUo
|
||||||
|
JMsfCRcJWseQpHPGt+E+9S0VzJBEZmc//8aEJevVxGyBVPcWzs+G+bATOeHdPCROngZxePP01mDm
|
||||||
|
vMhcg3wynlxSunEms3PX2isu8JTALb59srFUUjJnSeUp6ZgQ4Ol2qxy5UOmaQfrkpWZGFuUztXxi
|
||||||
|
J1PTA4ghyE94dvag7B/9ao5Gknklev9xIDPcpFJnQEhkZgTHvSDpQ9/RqHo/EoitrLdAjThnhOiZ
|
||||||
|
r5kjbsCf/XJDpds1O5ALaZBYkPlEc+LIbiH2dWFI6EeLqJya3Ht4OjFjL6rHsVQ/AgMBAAEwDQYJ
|
||||||
|
KoZIhvcNAQELBQADggEBACc92CJ+XLbp9CHor9WWSuc/Medc4DLK2GK/R+PwaO5dFGB615N4UVGd
|
||||||
|
GpigK5Yf/Cg4JD5r8waDSyxrm1o/3GhB9fwBjEfSLW4FA3Tj6LexOIxkUEqGP7NpHrFE0zfvc/hD
|
||||||
|
SuoXFnwuaI3uZmw0ArMl9QNEvgcx8Bnd/p35KQjyeRvw7PT0DKuudYFmoIEJLW64FC5/b4/P6LDS
|
||||||
|
fsTNuABCJyjoC0gbe/r0rmlucpa3K22l8NXO/pcIGPKVBP8URwdB1ibu803hbV5+a4knUy6Qghv6
|
||||||
|
uvdL1fLIJo85byUm6wQ4hEqy6cOX4D3DS08STo+mLfsv5c90Wq83niP1fXw=
|
||||||
|
-----END CERTIFICATE-----
|
||||||
27
d126ei4lj4cc00/d126ei4lj4cc00.key
Executable file
27
d126ei4lj4cc00/d126ei4lj4cc00.key
Executable file
@ -0,0 +1,27 @@
|
|||||||
|
-----BEGIN RSA PRIVATE KEY-----
|
||||||
|
MIIEogIBAAKCAQEAnK9z2p77DaM6QbSrZlb+8OP+Q3r1sUf1wdnMkDtI58x7ClAF
|
||||||
|
KCTLHwkXCVrHkKRzxrfhPvUtFcyQRGZnP//GhCXr1cRsgVT3Fs7PhvmwEznh3Twk
|
||||||
|
Tp4GcXjz9NZg5rzIXIN8Mp5cUrpxJrNz19orLvCUwC2+fbKxVFIyZ0nlKemYEODp
|
||||||
|
dqscuVDpmkH65KVmRhblM7V8YidT0wOIIchPeHb2oOwf/WqORpJ5JXr/cSAz3KRS
|
||||||
|
Z0BIZGYEx70g6UPf0ah6PxKIray3QI04Z4Toma+ZI27An/1yQ6XbNTuQC2mQWJD5
|
||||||
|
RHPiyG4h9nVhSOhHi6icmtx7eDoxYy+qx7FUPwIDAQABAoIBAAh4d8Pu6lWfaGva
|
||||||
|
75U1yMyPFtThFd1CraeQNb3qZpOZe2FgWBcGfjCsViF8VeOc8GFi2XuE164hA/+e
|
||||||
|
paBRHJNSVYCWAOOxCzahcZizcPBpJavHL5NMeb6yskWfPVfcBtzxgspdw1H5oFpe
|
||||||
|
Qzn9Im6ENRZ6opy7B1kupGjvFsOANr7SgYU2kijRdP006dqMUGBfYjXRy5iL3MxW
|
||||||
|
m3kuedL01cO+f5Q//87c2mW41/g5bxDQrCPV5tShoslQi3axqwegWcKIMO4vgT13
|
||||||
|
Mry56zZAZ6GVZklot/HynsKBiLHod6stw41oxQfw08EZn+U6aQDOaJUrBs//2zXx
|
||||||
|
P+6yeSkCgYEAy+U92vt+/F1sRJ/u64tiDit7XjeGg+dT5bT9/QligOC3r/oFhZFp
|
||||||
|
9ZayswWhIlMRimSo89oyFdG0TWJZ7nf/6nByNVoVJSuekHek34x81bH5L3ooASmY
|
||||||
|
kgyeKQLz/9m3dKtGfHA9I2UKwxW8dgXVYT+2G4qsuz0xhGpJYAYpsAsCgYEAxLm+
|
||||||
|
oh5j4WWH4fxISiGKz1j7JqeAAsmfhqtlS4app3izvD3Soy7VKrmCL0lO3frEgdrY
|
||||||
|
i6x7wq78CWjCcgJ9Id4dGK7NTjzgKp3P1oNEMdFp1KwFE8xOFwIrs0Vn60ajU45D
|
||||||
|
IxNXcoeZJoYoxTG14/gHgJaJfkKABqfLyI5YCR0CgYBDWnHJccSr9ux56t8QvhVh
|
||||||
|
GuoA4JS14+ep/NTeDoiUjCcBobTLP5LiBqr3SkfFP+2OatwI2a4r2P8XhQKyLL/E
|
||||||
|
IOsJRr2vbq5NiMhU9GKUcNsg3Nh0MdptfG+OmqQhgzj/+EgreSQpGgqpEPgVgK3R
|
||||||
|
FyvAA1o16+v8kuO0LbT9qwKBgDZnV7zlwqF2vplUd3loxUaKSQprkA81SxSnGaBF
|
||||||
|
YW2bB7mrLzFJplHmc4Y4M8NXsjhnGTOnQ6KXWcQQYJW+8nQHROyqisR0OVoPwoaE
|
||||||
|
TruoOihCWjUbbw0V4Jf3PcHnCwv0b8SneKuHrGbm+ydtk+uzj/+Tofp00YsFpGmW
|
||||||
|
U+pRAoGAeXskUwaWH1vzzIoB03SalKvOYfAeUdd6YtbwVkMTKo5j054NYnLCv/5V
|
||||||
|
bsEGXiXXELk6pvbybw0Qq93aUWFDtG2yPZyxFkOu2UBmvLsvzX9YV5TK2I608tOk
|
||||||
|
yuI4udmf85QhO1vrrEKPIRIj3rZFdDzsSf14G19K3GK5lCEMugo=
|
||||||
|
-----END RSA PRIVATE KEY-----
|
||||||
21
d126ei5emgcc00/ca.crt
Executable file
21
d126ei5emgcc00/ca.crt
Executable file
@ -0,0 +1,21 @@
|
|||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIDYzCCAkugAwIBAgIJAIQKwCvFI20lMA0GCSqGSIb3DQEBDQUAMEcxGTAXBgNV
|
||||||
|
BAMMEHRoaW5ndGFsay5qZGwuY24xCzAJBgNVBAoMAkpEMRAwDgYDVQQIDAdCZWlq
|
||||||
|
aW5nMQswCQYDVQQGEwJDTjAgFw0yMTA0MjAwNzUyMzFaGA8yMTIxMDMyNzA3NTIz
|
||||||
|
MVowRzEZMBcGA1UEAwwQdGhpbmd0YWxrLmpkbC5jbjELMAkGA1UECgwCSkQxEDAO
|
||||||
|
BgNVBAgMB0JlaWppbmcxCzAJBgNVBAYTAkNOMIIBIjANBgkqhkiG9w0BAQEFAAOC
|
||||||
|
AQ8AMIIBCgKCAQEAtoSsg0Qdzr/3vVIVNVrL8dHQNzwJvEDIkMapXfZ+KNxgEvwP
|
||||||
|
G6Ym+XUwykQdM3MjPSVdX/vwWDkOOZKKI5Rn5XHgt3Yufc7aVjmsvLto3mBdStuz
|
||||||
|
z3rh7PMPkFpW4Ie3zm0PCMbEsa6dT/ApPKElMZI5q4OSPNMmBLw8iDd9FPhi43bQ
|
||||||
|
74gQHKNbPxpXaCzMgNFxm9nwHsP2muHyKWkX8ATMXa/lPEjnD8+0eAGxlo0VY0h8
|
||||||
|
tWeipk1KFHRIdLJMhYOprKxWPqdY/pzqIyYNuOBqriO1/9FmxPXENlyGF/OUyvZt
|
||||||
|
uu4UwiCvQ9eVlZuN3XCCvZUZFAf92qYGWSC57QIDAQABo1AwTjAdBgNVHQ4EFgQU
|
||||||
|
hfVGDZhSn0yMTs2ZRXhXLVpTRRwwHwYDVR0jBBgwFoAUhfVGDZhSn0yMTs2ZRXhX
|
||||||
|
LVpTRRwwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQ0FAAOCAQEAsZfBS1fn8vA5
|
||||||
|
DU/IzYSSEFMQbp15fgGXrhcw5cgssX4EkxgoJebs1zllNCTmuUuZfZOMVx2BOq7y
|
||||||
|
Av0pWXFv/8gGUY86ZCHdoXvqykQkLwfhBIRxuWjRycquHZaCtcM3rZtuHPvW1AfT
|
||||||
|
cTjC3HwXn05ISi5mbz2ibPrXODkaxDEJ8m83hCyXXOdoI0P7r3zSokSDSCgMQYvA
|
||||||
|
2N+bn+CdoRf46+xBSC2RHm7pssBtRDKTO/iOPeWuk+sKJ4piiZUzctuvxVh7OYno
|
||||||
|
HH8NmepyB0N9NTBrrpup3pgOFf9ot5B3y2OWH4n8Q7ddQGrmj7SuW1HTW3LIl/HF
|
||||||
|
tetXyNsX3w==
|
||||||
|
-----END CERTIFICATE-----
|
||||||
16
d126ei5emgcc00/d126ei5emgcc00.crt
Executable file
16
d126ei5emgcc00/d126ei5emgcc00.crt
Executable file
@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIDDTCCAfWgAwIBAgIHAycFFRcCADANBgkqhkiG9w0BAQsFADBHMRkwFwYDVQQDExB0aGluZ3Rh
|
||||||
|
bGsuamRsLmNuMQswCQYDVQQKEwJKRDEQMA4GA1UECBMHQmVpamluZzELMAkGA1UEBhMCQ04wIBcN
|
||||||
|
MjUwNDIzMDgyOTUyWhgPMjA3NTA0MTEwODI5NTJaMEUxCzAJBgNVBAYTAkNOMRAwDgYDVQQIEwdC
|
||||||
|
ZWlqaW5nMQswCQYDVQQKEwJKRDEXMBUGA1UEAxMOZDEyNmVpNWVtZ2NjMDAwggEiMA0GCSqGSIb3
|
||||||
|
DQEBAQUAA4IBDwAwggEKAoIBAQCwezx2pe348VvFHfKqdV7u078uf15UoXLfRnLMWc+9BXOVRptd
|
||||||
|
lssWSkgFtvpRfvCfpNBjD+UY1hBl//pOhRCkzpl9GrVrzfWdgp8zjX2XcoxFAjk0JxCFFObfvZFj
|
||||||
|
C+NR+5mMP9eHtQamaoXcHYYo8+kAzrW8r7ZZbkLjqn+UFHLb9f9cd0L2r0nzwUgErBXGw2HLjnwF
|
||||||
|
BVNGNSbmVXh6d2qFW1jzIC/mqjrFnbZIeiwTWd4hbM6CDoCHa6Rigl7V2T2LUgXCqt1fVubPG4/a
|
||||||
|
scRHdq9Uh4VoLcoGzgfMiW30NPxHplx2QjUTCt5VHsIQtD9fdganvzwgtNyioP1DAgMBAAEwDQYJ
|
||||||
|
KoZIhvcNAQELBQADggEBAG4eKbCKqVQ6Sffp6omXwD7cEU1t5vz5B7LBRU94J8AtGHWDslJwcGyi
|
||||||
|
5QfaZoArAXp5KOTRXhrLTRTEsUeyys2uAOZ0Z/LlUJ1Tsc8150QfM50IvlSiefoSC9+nrhjmEO+r
|
||||||
|
SuIeshvVmVK3BYHipMoKzyEbSkFFQ71d0ShiwhaOQLNrM+hi71yZ/yCQvllsd7HHrd7iocV+uJYJ
|
||||||
|
IAeMTqew/+jlHk+lZWB1egkU7q4uYBEDrtbu5hlPNDg6fIeBuuw1she2yjBkOYj2H+Vucx1UNrdf
|
||||||
|
UxjNBRqg6jpWNfOrMGkTBHAIbFOH8hEZQdhvo9za++IzQfSNkrM8moiJkZE=
|
||||||
|
-----END CERTIFICATE-----
|
||||||
27
d126ei5emgcc00/d126ei5emgcc00.key
Executable file
27
d126ei5emgcc00/d126ei5emgcc00.key
Executable file
@ -0,0 +1,27 @@
|
|||||||
|
-----BEGIN RSA PRIVATE KEY-----
|
||||||
|
MIIEpAIBAAKCAQEAsHs8dqXt+PFbxR3yqnVe7tO/Ln9eVKFy30ZyzFnPvQVzlUab
|
||||||
|
XZbLFkpIBbb6UX7wn6TQYw/lGNYQZf/6ToUQpM6ZfRq1a831nYKfM419l3KMRQI5
|
||||||
|
NCcQhRTm372RYwvjUfuZjD/Xh7UGpmqF3B2GKPPpAM61vK+2WW5C46p/lBRy2/X/
|
||||||
|
XHdC9q9J88FIBKwVxsNhy458BQVTRjUm5lV4endqhVtY8yAv5qo6xZ22SHosE1ne
|
||||||
|
IWzOgg6Ah2ukYoJe1dk9i1IFwqrdX1bmzxuP2rHER3avVIeFaC3KBs4HzIlt9DT8
|
||||||
|
R6ZcdkI1EwreVR7CELQ/X3YGp788ILTcoqD9QwIDAQABAoIBABHvNCHKkvhtbqoF
|
||||||
|
dRelfdQ/aHpNL0Tic04FVr01k0reNvTAjCFipZjKS69o/N8zSziuAw9OGjX/6wKy
|
||||||
|
lLlOBHb7F9YC1NTzxTYQhCU1B8JQPbj1lOKb5a3gheXO2et61csLCnuaMUj1OIvI
|
||||||
|
33mS9oNK5i7S0t0t7hYAgoOoW/asQa5N0mTqH8uVGeq7eiHluk01q7VFnE0G6aYX
|
||||||
|
E8Zr68B1ihgRT8Iv2eW39apG2uqtBX/G048VTRWI1EOvVS/VM0vAbuN9mcvKOLtf
|
||||||
|
cMCCMUptbtSCFe8nvR8YZon1yrj53nOt2WVjTPn2G626VoBVn//UR7QvJMVHYD9p
|
||||||
|
3/zZnaECgYEA9L14pWghJjzBBwlsjqD074laaUVmc9MfZSfoqrniJdgfi2oGJ72D
|
||||||
|
zd+jq0XUAKOELfxG2KNCdmWg7QAbyA+5StjCAi6e9DogXV5LdS8XRPcQ/pEEyvZQ
|
||||||
|
JhfquPW+SJaLLAtKcKTbbtNJUVvg5B5nK7PUDHiJkTYsJUMbo4/0hO0CgYEAuJnR
|
||||||
|
vEBsr82TpI4tyo6eO85moRQslYwHMR3PQf9CMRnp/kHLSCNUROhbdNBVu7xVd4Zh
|
||||||
|
J2YlkkZUSqEod1bYVUwhbpCmQemPF7KfqF0FTLXbw/Jfp73JbYDxg60b3gJPJ2eZ
|
||||||
|
A7812Zmg4RukM+wkR0cIMVi+6TQ4n5lnbgNj9O8CgYEAnxHXLIr1oMi0HUK+0CVF
|
||||||
|
jbsUjH+TC40ZRsIds3mFx1slhZOv1HyVAmZtFpEYLiIZc1oZIg1a0WFUqzX62Jl/
|
||||||
|
sWoZDxoGLm7pQkZbfRrSYPzEivDu0Iwvo9K/uN/ggYV3h3T/OR+tj+a8LKkvDpXE
|
||||||
|
MN98324o27z+DGoFuNWD9DECgYAhYwiQ4KIHpcm3MFPN1798l5buOSTbI0lFs9uB
|
||||||
|
VzZUhRhR+PpYILOkBtZLqUZoPubCSFaX9pyC+R9TpBQaiWV0/+DoC1dWgnRz18WS
|
||||||
|
gMhtmFKX/OUaBHRCzthfdVad75L7UHxXNiT6JxP2wrYPAf2Juqobqq5UpTI8g1U2
|
||||||
|
i3xvlwKBgQDAb7zFOAc8eMOCVvNTJwaft73gF3y54AN5YOjc/L8W0jNE6bJBv1cY
|
||||||
|
SiV6RTj+CIAeXiwGfaM6dZH0MtRZMm3wAX28Ze2Uc2aiFS2kd2FRRjyMMPTA+dar
|
||||||
|
GDRx/hBOwX+s8ID6/wXTgCjB6TB4eXnlSdkM5zab96DKa4Myu2052w==
|
||||||
|
-----END RSA PRIVATE KEY-----
|
||||||
BIN
jd_ota/F8_20250517_V1.0.31_1838_W02CL0BSL_0x21.bin
Executable file
BIN
jd_ota/F8_20250517_V1.0.31_1838_W02CL0BSL_0x21.bin
Executable file
Binary file not shown.
BIN
jd_ota/jd_server
Executable file
BIN
jd_ota/jd_server
Executable file
Binary file not shown.
16
jd_ota/start.sh
Executable file
16
jd_ota/start.sh
Executable file
@ -0,0 +1,16 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
cd /root
|
||||||
|
filename=/root/ota/jd_server
|
||||||
|
filesize=`ls -l $filename | awk '{ print $5 }'`
|
||||||
|
maxsize=$((440000))
|
||||||
|
if [ $filesize -gt $maxsize ]
|
||||||
|
then
|
||||||
|
echo "$filesize > $maxsize copy"
|
||||||
|
cp $filename .
|
||||||
|
chmod 777 jd_server
|
||||||
|
./jd_server
|
||||||
|
else
|
||||||
|
echo "$filesize < $maxsize not copy"
|
||||||
|
./jd_server
|
||||||
|
fi
|
||||||
BIN
libcrypto.so.3
Executable file
BIN
libcrypto.so.3
Executable file
Binary file not shown.
BIN
libssl.so.3
Executable file
BIN
libssl.so.3
Executable file
Binary file not shown.
3
main.h
3
main.h
@ -83,6 +83,7 @@ typedef struct
|
|||||||
{
|
{
|
||||||
uint32_t name;
|
uint32_t name;
|
||||||
uint16_t battery;
|
uint16_t battery;
|
||||||
|
uint16_t reserve;
|
||||||
}__attribute__((packed)) jt_only_tag_t;
|
}__attribute__((packed)) jt_only_tag_t;
|
||||||
|
|
||||||
void hgz_init_db_multy(mqtt_parm_t *mqtt_parm);
|
void hgz_init_db_multy(mqtt_parm_t *mqtt_parm);
|
||||||
@ -163,5 +164,5 @@ void getDevRegisterStatus(char *devsn);
|
|||||||
void hgz_get_returninfo_by_cellname(char *cellname,int *userid,char *batchid,char *username,char *devsn);
|
void hgz_get_returninfo_by_cellname(char *cellname,int *userid,char *batchid,char *username,char *devsn);
|
||||||
void getDevInfo(char *parm);
|
void getDevInfo(char *parm);
|
||||||
void *actHandleQrcode(void *parm);
|
void *actHandleQrcode(void *parm);
|
||||||
void updateStationInfo(char *msg_id);
|
void station_status_report(void);
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@ -57,13 +57,11 @@ trace_level_name_t trace_level_name_list[] = {
|
|||||||
{MQTTASYNC_TRACE_FATAL, "MQTTASYNC_TRACE_FATAL"},
|
{MQTTASYNC_TRACE_FATAL, "MQTTASYNC_TRACE_FATAL"},
|
||||||
};
|
};
|
||||||
|
|
||||||
void mqtt_server_light_status_report(char *sn,char *msg_id,char *scene,json_object *lights){
|
void mqtt_server_events_report(char *sn,char *msg_id,json_object *events){
|
||||||
char topic[128] = "";
|
char topic[128] = "";
|
||||||
const char *payload = NULL;
|
const char *payload = NULL;
|
||||||
char time_buffer[128] = "";
|
char time_buffer[16] = "";
|
||||||
json_object *root = NULL;
|
json_object *root = NULL;
|
||||||
json_object *data = NULL;
|
|
||||||
json_object *msg = NULL;
|
|
||||||
struct timeval tv;
|
struct timeval tv;
|
||||||
gettimeofday(&tv, NULL);
|
gettimeofday(&tv, NULL);
|
||||||
snprintf(time_buffer,sizeof(time_buffer),"%ld",tv.tv_sec*1000+tv.tv_usec);
|
snprintf(time_buffer,sizeof(time_buffer),"%ld",tv.tv_sec*1000+tv.tv_usec);
|
||||||
@ -73,31 +71,13 @@ void mqtt_server_light_status_report(char *sn,char *msg_id,char *scene,json_obje
|
|||||||
LOG_I("json_object_new_object error\n");
|
LOG_I("json_object_new_object error\n");
|
||||||
goto json_error;
|
goto json_error;
|
||||||
}
|
}
|
||||||
msg = json_object_new_object();
|
|
||||||
if(msg == NULL){
|
|
||||||
LOG_I("msg: NULL\n");
|
|
||||||
goto json_error;
|
|
||||||
}
|
|
||||||
|
|
||||||
data = json_object_new_object();
|
|
||||||
if(msg == NULL){
|
|
||||||
LOG_I("msg: NULL\n");
|
|
||||||
goto json_error;
|
|
||||||
}
|
|
||||||
|
|
||||||
json_object_object_add(root, "deviceId", json_object_new_string(sn));
|
json_object_object_add(root, "deviceId", json_object_new_string(sn));
|
||||||
json_object_object_add(root, "messageId", json_object_new_string(msg_id));
|
json_object_object_add(root, "messageId", json_object_new_string(msg_id));
|
||||||
json_object_object_add(root, "productId", json_object_new_string(mqtt_conf->productcode));
|
|
||||||
json_object_object_add(root, "timestamp", json_object_new_string(time_buffer));
|
json_object_object_add(root, "timestamp", json_object_new_string(time_buffer));
|
||||||
|
json_object_object_add(root, "events", events);
|
||||||
|
|
||||||
json_object_object_add(data, "scene", json_object_new_string(scene));
|
snprintf(topic, sizeof(topic), "$iot/v1/device/%s/events/post",sn);
|
||||||
json_object_object_add(data, "lights", lights);
|
|
||||||
|
|
||||||
json_object_object_add(msg, "data", data);
|
|
||||||
json_object_object_add(msg, "msgType", json_object_new_string("9007"));
|
|
||||||
json_object_object_add(root, "msg", msg);
|
|
||||||
|
|
||||||
snprintf(topic, sizeof(topic), "iot/%s/message/report",mqtt_conf->productcode);
|
|
||||||
LOG_I("publish topic:[%s]\n", topic);
|
LOG_I("publish topic:[%s]\n", topic);
|
||||||
payload = json_object_to_json_string(root);
|
payload = json_object_to_json_string(root);
|
||||||
LOG_I("payload[%d][%s]\n", strlen(payload), payload);
|
LOG_I("payload[%d][%s]\n", strlen(payload), payload);
|
||||||
@ -106,64 +86,15 @@ json_error:
|
|||||||
json_object_put(root);
|
json_object_put(root);
|
||||||
}
|
}
|
||||||
|
|
||||||
void mqtt_server_station_status_report(char *msg_id,char *product_id,char *sn,char *local_ip, char *base_version,
|
void mqtt_server_reply(char *sn,char *msg_id,json_object *functions)
|
||||||
char *status, char *duration){
|
|
||||||
char topic[128] = "";
|
|
||||||
const char *payload = NULL;
|
|
||||||
char time_buffer[128] = "";
|
|
||||||
json_object *root = NULL;
|
|
||||||
json_object *msg = NULL;
|
|
||||||
json_object *data = NULL;
|
|
||||||
|
|
||||||
struct timeval tv;
|
|
||||||
gettimeofday(&tv, NULL);
|
|
||||||
snprintf(time_buffer,sizeof(time_buffer),"%ld",tv.tv_sec*1000+tv.tv_usec);
|
|
||||||
|
|
||||||
//LOG_I("%s\n", __func__);
|
|
||||||
root = json_object_new_object();
|
|
||||||
if(root == NULL){
|
|
||||||
LOG_I("json_object_new_object error\n");
|
|
||||||
goto json_error;
|
|
||||||
}
|
|
||||||
|
|
||||||
msg = json_object_new_object();
|
|
||||||
if(msg == NULL){
|
|
||||||
LOG_I("msg: NULL\n");
|
|
||||||
goto json_error;
|
|
||||||
}
|
|
||||||
|
|
||||||
data = json_object_new_object();
|
|
||||||
if(msg == NULL){
|
|
||||||
LOG_I("msg: NULL\n");
|
|
||||||
goto json_error;
|
|
||||||
}
|
|
||||||
json_object_object_add(root, "deviceId", json_object_new_string(sn));
|
|
||||||
json_object_object_add(root, "messageId", json_object_new_string(msg_id));
|
|
||||||
json_object_object_add(root, "productId", json_object_new_string(mqtt_conf->productcode));
|
|
||||||
json_object_object_add(root, "timestamp", json_object_new_string(time_buffer));
|
|
||||||
|
|
||||||
json_object_object_add(data, "ip", json_object_new_string(local_ip));
|
|
||||||
json_object_object_add(data, "baseVersion", json_object_new_string(base_version));
|
|
||||||
json_object_object_add(data, "status", json_object_new_string(status));
|
|
||||||
json_object_object_add(data, "duration", json_object_new_string(duration));
|
|
||||||
|
|
||||||
json_object_object_add(msg, "data", data);
|
|
||||||
json_object_object_add(msg, "msgType", json_object_new_string("9008"));
|
|
||||||
json_object_object_add(root, "msg", msg);
|
|
||||||
snprintf(topic, sizeof(topic), "iot/%s/message/report",mqtt_conf->productcode);
|
|
||||||
LOG_I("publish topic:[%s]\n", topic);
|
|
||||||
payload = json_object_to_json_string(root);
|
|
||||||
LOG_I("payload[%d][%s]\n", strlen(payload), payload);
|
|
||||||
mqtt_utils_publish(mqtt_conf, topic, 2, payload, strlen(payload));
|
|
||||||
json_error:
|
|
||||||
json_object_put(root);
|
|
||||||
}
|
|
||||||
|
|
||||||
void mqtt_service_reply(char *sn,char *msg_id,char *msg,int success,char *product_id)
|
|
||||||
{
|
{
|
||||||
char topic[128] = "";
|
char topic[128] = "";
|
||||||
const char *payload = NULL;
|
const char *payload = NULL;
|
||||||
json_object *root = NULL;
|
json_object *root = NULL;
|
||||||
|
struct timeval tv;
|
||||||
|
char time_buffer[16] = "";
|
||||||
|
gettimeofday(&tv, NULL);
|
||||||
|
snprintf(time_buffer,sizeof(time_buffer),"%ld",tv.tv_sec*1000+tv.tv_usec);
|
||||||
|
|
||||||
//LOG_I("%s\n", __func__);
|
//LOG_I("%s\n", __func__);
|
||||||
root = json_object_new_object();
|
root = json_object_new_object();
|
||||||
@ -174,11 +105,12 @@ void mqtt_service_reply(char *sn,char *msg_id,char *msg,int success,char *produc
|
|||||||
|
|
||||||
json_object_object_add(root, "deviceId", json_object_new_string(sn));
|
json_object_object_add(root, "deviceId", json_object_new_string(sn));
|
||||||
json_object_object_add(root, "messageId", json_object_new_string(msg_id));
|
json_object_object_add(root, "messageId", json_object_new_string(msg_id));
|
||||||
json_object_object_add(root, "msg", json_object_new_string(msg));
|
json_object_object_add(root, "timestamp", json_object_new_string(time_buffer));
|
||||||
json_object_object_add(root, "success", json_object_new_boolean(success));
|
json_object_object_add(root, "code", json_object_new_int(200));
|
||||||
json_object_object_add(root, "productId", json_object_new_string(mqtt_conf->productcode));
|
json_object_object_add(root, "message", json_object_new_string("success"));
|
||||||
|
json_object_object_add(root, "payload", functions);
|
||||||
|
|
||||||
snprintf(topic, sizeof(topic), "iot/%s/adviceDevice/reply",mqtt_conf->productcode);
|
snprintf(topic, sizeof(topic), "$iot/v1/device/%s/functions/call/response",sn);
|
||||||
LOG_I("publish topic:[%s]\n", topic);
|
LOG_I("publish topic:[%s]\n", topic);
|
||||||
payload = json_object_to_json_string(root);
|
payload = json_object_to_json_string(root);
|
||||||
LOG_I("payload[%d][%s]\n", strlen(payload), payload);
|
LOG_I("payload[%d][%s]\n", strlen(payload), payload);
|
||||||
@ -203,7 +135,7 @@ int printVersionInfo(MQTTAsync_nameValue * info){
|
|||||||
int rc = 0;
|
int rc = 0;
|
||||||
//LOG_I("MQTT library information:\n");
|
//LOG_I("MQTT library information:\n");
|
||||||
while (info->name){
|
while (info->name){
|
||||||
//LOG_I("%s: %s\n", info->name, info->value);
|
LOG_I("%s: %s\n", info->name, info->value);
|
||||||
info++;
|
info++;
|
||||||
rc = 1; /* at least one value printed */
|
rc = 1; /* at least one value printed */
|
||||||
}
|
}
|
||||||
@ -256,9 +188,7 @@ void mqtt_utils_connected(void *context, char *cause){
|
|||||||
connect_failure_times=0;
|
connect_failure_times=0;
|
||||||
mqtt_utils_subscribe(mqtt_conf,nativeInvokTopicName,2);
|
mqtt_utils_subscribe(mqtt_conf,nativeInvokTopicName,2);
|
||||||
system("echo 1 > /sys/class/gpio/gpio113/value");//yellow ok
|
system("echo 1 > /sys/class/gpio/gpio113/value");//yellow ok
|
||||||
char myid[32]={0};
|
station_status_report();
|
||||||
myrand(myid,19);
|
|
||||||
updateStationInfo(myid);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void mqtt_utils_disconnected(void *context, MQTTProperties* props, enum MQTTReasonCodes rc){
|
void mqtt_utils_disconnected(void *context, MQTTProperties* props, enum MQTTReasonCodes rc){
|
||||||
@ -344,7 +274,7 @@ int mqtt_utils_init(mqtt_utils_t *mqtt_config)
|
|||||||
MQTTAsync_setTraceLevel(mqtt_conf->tracelevel);
|
MQTTAsync_setTraceLevel(mqtt_conf->tracelevel);
|
||||||
|
|
||||||
//snprintf(url, sizeof(url), "%s://%s:%d", mqtt_conf->protocol, mqtt_conf->host, mqtt_conf->port);
|
//snprintf(url, sizeof(url), "%s://%s:%d", mqtt_conf->protocol, mqtt_conf->host, mqtt_conf->port);
|
||||||
snprintf(url, sizeof(url), "tcp://%s:%d", mqtt_conf->host, mqtt_conf->port);
|
snprintf(url, sizeof(url), "ssl://%s:%d", mqtt_conf->host, mqtt_conf->port);
|
||||||
LOG_I("mqtt url=%s\n", url);
|
LOG_I("mqtt url=%s\n", url);
|
||||||
create_opts.sendWhileDisconnected = 0;
|
create_opts.sendWhileDisconnected = 0;
|
||||||
rc = MQTTAsync_createWithOptions(&mqtt_conf->client,
|
rc = MQTTAsync_createWithOptions(&mqtt_conf->client,
|
||||||
@ -406,14 +336,41 @@ int mqtt_utils_init(mqtt_utils_t *mqtt_config)
|
|||||||
conn_opts.will = &will_opts;
|
conn_opts.will = &will_opts;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//ssl_opts.keyStore = clientCrt; //客户端证书路径
|
||||||
|
//ssl_opts.trustStore = CAFile; //ca证书路径
|
||||||
|
//ssl_opts.privateKey = clientKey; //客户端密钥路径
|
||||||
|
//ssl_opts.privateKeyPassword = mqtt_tls_port->clientKeyPasswd; //密钥,如果有客户端密钥路径该项可为空
|
||||||
|
//ssl_opts.sslVersion = MQTT_SSL_VERSION_DEFAULT;
|
||||||
|
//conn_opts.ssl = &ssl_opts;
|
||||||
|
|
||||||
|
|
||||||
|
// 证书和密钥路径(根据实际位置修改)
|
||||||
|
//const char* clientCrt = "/path/to/client.crt"; // 客户端证书
|
||||||
|
//const char* CAFile = "/path/to/ca.crt"; // CA证书
|
||||||
|
//const char* clientKey = "/path/to/client.key"; // 客户端私钥
|
||||||
|
|
||||||
|
// 配置SSL选项
|
||||||
|
//MQTTClient_SSLOptions ssl_opts = MQTTClient_SSLOptions_initializer;
|
||||||
|
//ssl_opts.keyStore = clientCrt;
|
||||||
|
//ssl_opts.trustStore = CAFile;
|
||||||
|
//ssl_opts.privateKey = clientKey;
|
||||||
|
//ssl_opts.privateKeyPassword = "key_password"; // 若私钥未加密则设为NULL
|
||||||
|
//ssl_opts.sslVersion = MQTT_SSL_VERSION_TLS_1_2; // 显式指定TLS 1.2
|
||||||
|
|
||||||
|
// 关联到连接选项
|
||||||
|
//MQTTClient_connectOptions conn_opts = MQTTClient_connectOptions_initializer;
|
||||||
|
//conn_opts.ssl = &ssl_opts;
|
||||||
|
|
||||||
|
|
||||||
if (mqtt_conf->insecure){
|
if (mqtt_conf->insecure){
|
||||||
ssl_opts.verify = 0;
|
LOG_I("use key file\n");
|
||||||
ssl_opts.CApath = mqtt_conf->capath;
|
ssl_opts.enableServerCertAuth = 1;
|
||||||
|
//ssl_opts.CApath = mqtt_conf->capath;
|
||||||
ssl_opts.keyStore = mqtt_conf->cert;
|
ssl_opts.keyStore = mqtt_conf->cert;
|
||||||
ssl_opts.trustStore = mqtt_conf->cafile;
|
ssl_opts.trustStore = mqtt_conf->cafile;
|
||||||
ssl_opts.privateKey = mqtt_conf->key;
|
ssl_opts.privateKey = mqtt_conf->key;
|
||||||
ssl_opts.privateKeyPassword = mqtt_conf->keypass;
|
//ssl_opts.privateKeyPassword = mqtt_conf->keypass;
|
||||||
ssl_opts.enabledCipherSuites = mqtt_conf->ciphers;
|
//ssl_opts.enabledCipherSuites = mqtt_conf->ciphers;
|
||||||
ssl_opts.ssl_error_cb = mqtt_utils_on_ssl_error;
|
ssl_opts.ssl_error_cb = mqtt_utils_on_ssl_error;
|
||||||
ssl_opts.ssl_error_context = NULL;
|
ssl_opts.ssl_error_context = NULL;
|
||||||
conn_opts.ssl = &ssl_opts;
|
conn_opts.ssl = &ssl_opts;
|
||||||
@ -434,8 +391,7 @@ int mqtt_utils_init(mqtt_utils_t *mqtt_config)
|
|||||||
mqtt_conf->sub_opts.onFailure = mqtt_utils_on_subscribe_failure;
|
mqtt_conf->sub_opts.onFailure = mqtt_utils_on_subscribe_failure;
|
||||||
mqtt_conf->sub_opts.context = NULL;
|
mqtt_conf->sub_opts.context = NULL;
|
||||||
|
|
||||||
//sprintf(nativeInvokTopicName,"iot/10025/%s/message/adviceDevice",mqtt_conf->clientid);
|
sprintf(nativeInvokTopicName,"$iot/v1/device/%s/functions/call",mqtt_conf->username);
|
||||||
sprintf(nativeInvokTopicName,"iot/%s/%s/message/adviceDevice",mqtt_conf->productcode,mqtt_conf->username);
|
|
||||||
LOG_I("nativeInvokTopicName:%s\n",nativeInvokTopicName);
|
LOG_I("nativeInvokTopicName:%s\n",nativeInvokTopicName);
|
||||||
|
|
||||||
ret = 0;
|
ret = 0;
|
||||||
|
|||||||
@ -78,84 +78,29 @@ typedef struct{
|
|||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
char msg_deviceId[32];
|
char msg_deviceId[32];
|
||||||
char msg_messageId[32];
|
char msg_messageId[64];
|
||||||
char msg_type[32];
|
char msg_key[32];
|
||||||
char msg_zipPath[512];
|
char msg_devName[32];
|
||||||
char msg_version[32];
|
char msg_taskId[32];
|
||||||
char msg_scene[32];
|
char msg_groupNo[4];
|
||||||
char msg_timeout[32];
|
char msg_time[32];
|
||||||
char msg_label1[32];
|
char msg_ext1[32];
|
||||||
char msg_label2[32];
|
char msg_ext2[32];
|
||||||
char msg_label3[32];
|
char msg_sn[7];
|
||||||
char msg_label1Rule[32];
|
|
||||||
char msg_label2Rule[32];
|
|
||||||
char msg_label3Rule[32];
|
|
||||||
char msg_color[32];
|
|
||||||
char msg_sound[32];
|
|
||||||
char msg_flash[32];
|
|
||||||
char msg_flashInterval[32];
|
|
||||||
char msg_lightDuration[32];
|
|
||||||
char msg_sn[32];
|
|
||||||
char msg_lights[128];
|
|
||||||
int msg_needWifi;
|
|
||||||
int msg_installType;
|
|
||||||
int msg_immediately;
|
|
||||||
int msg_installTime;
|
|
||||||
int msg_timestamp;
|
|
||||||
int msg_opNumber;
|
int msg_opNumber;
|
||||||
|
int msg_action;
|
||||||
|
int msg_color;
|
||||||
|
int msg_duration;
|
||||||
}mqtt_parm_t;
|
}mqtt_parm_t;
|
||||||
|
|
||||||
typedef struct
|
|
||||||
{
|
|
||||||
char cabinetName[2];
|
|
||||||
char cellName[32];
|
|
||||||
char cellState[32];
|
|
||||||
char cellVoltageType[32];
|
|
||||||
char cellConnectorType[32];
|
|
||||||
char cellRepairType[64];
|
|
||||||
char devType[32];
|
|
||||||
char devCheckType[32];
|
|
||||||
char devSn[64];
|
|
||||||
char devPvd[32];
|
|
||||||
char devPro[64];
|
|
||||||
char devMfg[64];
|
|
||||||
char devState[32];
|
|
||||||
char devRepairType[512];
|
|
||||||
char batchId[64];
|
|
||||||
char opType[64];
|
|
||||||
char opTime[64];
|
|
||||||
int devPwr;
|
|
||||||
int userId;
|
|
||||||
}db_parm_t;
|
|
||||||
|
|
||||||
typedef struct{
|
|
||||||
char result[1024];
|
|
||||||
char opTime[32];
|
|
||||||
char opType[32];
|
|
||||||
char status[32];
|
|
||||||
int userId;
|
|
||||||
}test_parm_t;
|
|
||||||
|
|
||||||
extern void mqtt_net_failure(int *failure_times);
|
extern void mqtt_net_failure(int *failure_times);
|
||||||
extern int mqtt_utils_init(mqtt_utils_t *mqtt_utils);
|
extern int mqtt_utils_init(mqtt_utils_t *mqtt_utils);
|
||||||
extern int get_trace_level_by_name(char *name);
|
extern int get_trace_level_by_name(char *name);
|
||||||
extern int mqtt_utils_subscribe(mqtt_utils_t *mqtt_utils, char *topic, int qos);
|
extern int mqtt_utils_subscribe(mqtt_utils_t *mqtt_utils, char *topic, int qos);
|
||||||
extern int mqtt_utils_publish(mqtt_utils_t *mqtt_utils, char *topic, int qos, const char *data, int datalen);
|
extern int mqtt_utils_publish(mqtt_utils_t *mqtt_utils, char *topic, int qos, const char *data, int datalen);
|
||||||
extern int mqtt_utils_uninit(mqtt_utils_t *mqtt_utils);
|
extern int mqtt_utils_uninit(mqtt_utils_t *mqtt_utils);
|
||||||
void mqtt_service_invoke_reply(char *msg_id, char *code, char *status, char *msg_type, char *json_name, struct json_object *json_val);
|
void mqtt_server_reply(char *sn,char *msg_id,json_object *functions);
|
||||||
void mqtt_service_cell_report(char *cellName,db_parm_t *db_parm);
|
void mqtt_server_events_report(char *sn,char *msg_id,json_object *events);
|
||||||
void mqtt_service_returndev_event_report(char *cellName,db_parm_t *db_parm);
|
|
||||||
void mqtt_service_losedev_event_report(char *cellName,db_parm_t *db_parm);
|
|
||||||
void mqtt_service_borrowdev_event_report(char *cellName,db_parm_t *db_parm);
|
|
||||||
void mqtt_service_managedev_event_report(test_parm_t *test_parm,char *eventType);
|
|
||||||
void mqtt_service_uploadlog_report(char *filename,char *fileurl,char *msg_id);
|
|
||||||
void mqtt_service_downloadapp_report(char *msg_id,int task_id,char *code,char *message);
|
|
||||||
void mqtt_service_softversion_report(char *fwversion);
|
|
||||||
void mqtt_handle_error_event_report(char *cellname,char *batchid,char *optime,int userid,char *opType);
|
|
||||||
void mqtt_server_station_status_report(char *msg_id,char *product_id,char *sn,char *local_ip, char *base_version,
|
|
||||||
char *status, char *duration);
|
|
||||||
void mqtt_service_reply(char *sn,char *msg_id,char *msg,int success,char *product_id);
|
|
||||||
void mqtt_server_light_status_report(char *sn,char *msg_id,char *scene,json_object *lights);
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@ -1,7 +1,8 @@
|
|||||||
. compile.sh
|
. compile.sh
|
||||||
#rm -fr output
|
rm -fr output
|
||||||
#mkdir output
|
mkdir output
|
||||||
cd output
|
cd output
|
||||||
cmake ..
|
cmake .. -DPAHO_WITH_SSL=TRUE
|
||||||
|
#cmake ..
|
||||||
make
|
make
|
||||||
cd ..
|
cd ..
|
||||||
|
|||||||
@ -40,7 +40,7 @@ pthread_mutexattr_t g_MutexAttr_m;
|
|||||||
* 其他说明: 无
|
* 其他说明: 无
|
||||||
* 修改日期 版本号 修改人 修改内容
|
* 修改日期 版本号 修改人 修改内容
|
||||||
****************************************************************/
|
****************************************************************/
|
||||||
void PutDataIntoQueue(uint32_t tagname,uint16_t battery){
|
void PutDataIntoQueue(uint32_t tagname,uint16_t battery,uint16_t reserve){
|
||||||
T_StructInfo tQueueData = {0};
|
T_StructInfo tQueueData = {0};
|
||||||
|
|
||||||
// 对结构体的变量进行赋值
|
// 对结构体的变量进行赋值
|
||||||
@ -48,6 +48,7 @@ void PutDataIntoQueue(uint32_t tagname,uint16_t battery){
|
|||||||
//memcpy(tQueueData.cmd,cmd,4);
|
//memcpy(tQueueData.cmd,cmd,4);
|
||||||
tQueueData.tagname=tagname;
|
tQueueData.tagname=tagname;
|
||||||
tQueueData.battery=battery;
|
tQueueData.battery=battery;
|
||||||
|
tQueueData.reserve=reserve;
|
||||||
// 将数据加入队列(一直等到加入成功之后才退出)
|
// 将数据加入队列(一直等到加入成功之后才退出)
|
||||||
while (EnQueue(tQueueData) == -1){
|
while (EnQueue(tQueueData) == -1){
|
||||||
Sleep(1000); // 加入失败,1秒后重试
|
Sleep(1000); // 加入失败,1秒后重试
|
||||||
@ -79,7 +80,7 @@ void PutDataIntoMQueue(char *payload){
|
|||||||
* 其他说明: 无
|
* 其他说明: 无
|
||||||
* 修改日期 版本号 修改人 修改内容
|
* 修改日期 版本号 修改人 修改内容
|
||||||
****************************************************************/
|
****************************************************************/
|
||||||
int GetDataFromQueue(uint32_t *tagname,uint16_t *battery){
|
int GetDataFromQueue(uint32_t *tagname,uint16_t *battery,uint16_t *reserve){
|
||||||
T_StructInfo tQueueData = {0};
|
T_StructInfo tQueueData = {0};
|
||||||
if (DeQueue(&tQueueData) == -1){
|
if (DeQueue(&tQueueData) == -1){
|
||||||
return -1;
|
return -1;
|
||||||
@ -88,6 +89,7 @@ int GetDataFromQueue(uint32_t *tagname,uint16_t *battery){
|
|||||||
//memcpy(cmd,tQueueData.cmd,4);
|
//memcpy(cmd,tQueueData.cmd,4);
|
||||||
*tagname=tQueueData.tagname;
|
*tagname=tQueueData.tagname;
|
||||||
*battery=tQueueData.battery;
|
*battery=tQueueData.battery;
|
||||||
|
*reserve=tQueueData.reserve;
|
||||||
// 打印取出的数据
|
// 打印取出的数据
|
||||||
//printf("GetDataFromQueue: cellNum=%s, cmd=%s\n", tQueueData.cellNum, tQueueData.cmd);
|
//printf("GetDataFromQueue: cellNum=%s, cmd=%s\n", tQueueData.cellNum, tQueueData.cmd);
|
||||||
return 0;
|
return 0;
|
||||||
|
|||||||
@ -10,6 +10,7 @@ typedef struct
|
|||||||
{
|
{
|
||||||
uint32_t tagname;
|
uint32_t tagname;
|
||||||
uint16_t battery;
|
uint16_t battery;
|
||||||
|
uint16_t reserve;
|
||||||
} T_StructInfo;
|
} T_StructInfo;
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
@ -17,8 +18,8 @@ typedef struct
|
|||||||
char payload[1024];
|
char payload[1024];
|
||||||
} M_StructInfo;
|
} M_StructInfo;
|
||||||
|
|
||||||
void PutDataIntoQueue(uint32_t tagname,uint16_t battery);
|
void PutDataIntoQueue(uint32_t tagname,uint16_t battery,uint16_t reserve);
|
||||||
int GetDataFromQueue(uint32_t *tagname,uint16_t *battery);
|
int GetDataFromQueue(uint32_t *tagname,uint16_t *battery,uint16_t *reserve);
|
||||||
INT32 EnQueue(T_StructInfo tQueueData);
|
INT32 EnQueue(T_StructInfo tQueueData);
|
||||||
INT32 DeQueue(T_StructInfo *tDqueueData);
|
INT32 DeQueue(T_StructInfo *tDqueueData);
|
||||||
|
|
||||||
|
|||||||
5
ssh.sh
5
ssh.sh
@ -1,3 +1,6 @@
|
|||||||
sshpass -p "&Over#B0Ost!" ssh root@10.10.10.101
|
sshpass -p "&Over#B0Ost!" ssh root@10.10.12.2
|
||||||
|
#sshpass -p "&Over#B0Ost!" ssh root@10.10.12.230
|
||||||
|
#sshpass -p "&Over#B0Ost!" ssh root@10.10.10.150
|
||||||
|
#sshpass -p "&Over#B0Ost!" ssh root@10.10.10.101
|
||||||
#sshpass -p "PddloTSecPwdOnly!" ssh root@10.10.10.132
|
#sshpass -p "PddloTSecPwdOnly!" ssh root@10.10.10.132
|
||||||
#sshpass -p "PddloTSecPwdOnly!" ssh root@192.168.0.148
|
#sshpass -p "PddloTSecPwdOnly!" ssh root@192.168.0.148
|
||||||
|
|||||||
3921
uart_can/uart_can.c
3921
uart_can/uart_can.c
File diff suppressed because it is too large
Load Diff
1587
uart_can/uart_can.h
1587
uart_can/uart_can.h
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user