From 5ba829db67df31860e44f1dcb778722257d7239f Mon Sep 17 00:00:00 2001 From: Fancy code <258828110.@qq.com> Date: Tue, 12 Mar 2024 16:37:15 +0800 Subject: [PATCH] Improve:SifxFrame app test. --- application/HunttingCamera/src/MainThread.cpp | 14 ++++++++++++++ application/MissionManager/src/AppMonitor.cpp | 6 +++--- hal/src/WifiHal.cpp | 8 ++++---- .../src/Protocol/SixFrame/SixFrameHandle.cpp | 18 ++++++++++++------ utils/WebServer/build/webserver.cmake | 3 ++- utils/WebServer/src/WebServer.cpp | 2 +- 6 files changed, 36 insertions(+), 15 deletions(-) diff --git a/application/HunttingCamera/src/MainThread.cpp b/application/HunttingCamera/src/MainThread.cpp index 611479c..ef58087 100644 --- a/application/HunttingCamera/src/MainThread.cpp +++ b/application/HunttingCamera/src/MainThread.cpp @@ -20,6 +20,19 @@ #include "IMissionManager.h" #include "IStateMachine.h" #include +#include +static void sigHandler(int signo) +{ + LogInfo("Stop main application.\n"); + MainThread::GetInstance()->Exit(); +} +void InitSignalHandle(void) +{ + signal(SIGINT, sigHandler); + signal(SIGTERM, sigHandler); + signal(SIGKILL, sigHandler); + signal(SIGPIPE, SIG_IGN); +} MainThread::MainThread() { mMainThreadRuning = false; } std::shared_ptr &MainThread::GetInstance(std::shared_ptr *impl) { @@ -37,6 +50,7 @@ std::shared_ptr &MainThread::GetInstance(std::shared_ptr } StatusCode MainThread::Init(void) { + InitSignalHandle(); CreateLogModule(); ILogInit(LOG_EASYLOGGING); CustomizationInit(); diff --git a/application/MissionManager/src/AppMonitor.cpp b/application/MissionManager/src/AppMonitor.cpp index 58ee339..087e0a9 100644 --- a/application/MissionManager/src/AppMonitor.cpp +++ b/application/MissionManager/src/AppMonitor.cpp @@ -40,9 +40,9 @@ StatusCode AppMonitor::GetDeviceAttr(AppGetDeviceAttr ¶m) StatusCode AppMonitor::GetMediaInfo(AppGetMeidaInfo ¶m) { LogInfo("AppMonitor::GetMediaInfo.\n"); - param.mRtspUrl = "test"; - param.mTransport = "test"; - param.mPort = 123; + param.mRtspUrl = "rtsp://192.168.169.1/stream.mp4"; + param.mTransport = "tcp"; + param.mPort = 6035; return CreateStatusCode(STATUS_CODE_OK); } StatusCode AppMonitor::GetSdCardInfo(AppGetSdCardInfo ¶m) diff --git a/hal/src/WifiHal.cpp b/hal/src/WifiHal.cpp index b0c5c56..66e9293 100644 --- a/hal/src/WifiHal.cpp +++ b/hal/src/WifiHal.cpp @@ -16,9 +16,9 @@ #include "LinuxApi.h" StatusCode WifiHal::OpenApMode(void) { - fx_system("ifconfig wlan0 192.168.169.1 netmask 255.255.255.0"); - fx_system("hostapd -d /etc/hostapd.conf &"); - fx_system("touch /var/lib/misc/udhcpd.leases"); - fx_system("udhcpd -f /etc/udhcpd.conf &"); + // fx_system("ifconfig wlan0 192.168.169.1 netmask 255.255.255.0"); + // fx_system("hostapd -d /etc/hostapd.conf &"); + // fx_system("touch /var/lib/misc/udhcpd.leases"); + // fx_system("udhcpd -f /etc/udhcpd.conf &"); return CreateStatusCode(STATUS_CODE_OK); } \ No newline at end of file diff --git a/middleware/AppManager/src/Protocol/SixFrame/SixFrameHandle.cpp b/middleware/AppManager/src/Protocol/SixFrame/SixFrameHandle.cpp index f628974..1d5c1d5 100644 --- a/middleware/AppManager/src/Protocol/SixFrame/SixFrameHandle.cpp +++ b/middleware/AppManager/src/Protocol/SixFrame/SixFrameHandle.cpp @@ -95,8 +95,13 @@ void SixFrameHandle::RequestHandle2(const std::string command, const std::string } void SixFrameHandle::DoNothing(const std::string &url, ResponseHandle responseHandle, void *context) { - // - responseHandle("Unknown command.", context); + // responseHandle("Unknown command.", context); + char *resultStr = nullptr; + cJSON *result = MakeResponseResult(ResposeResult::FAILED); + resultStr = cJSON_Print(result); + responseHandle(resultStr, context); + free(resultStr); + cJSON_Delete(result); } void SixFrameHandle::RequestGetProductInfo(const std::string &url, ResponseHandle responseHandle, void *context) { @@ -149,7 +154,7 @@ void inline SixFrameHandle::ResponseGetDeviceAttr(cJSON *result, const AppGetDev } void SixFrameHandle::RequestGetMediaInfo(const std::string &url, ResponseHandle responseHandle, void *context) { - LogInfo("RequestGetDeviceAttr.\n"); + LogInfo("RequestGetMediaInfo.\n"); char *resultStr = nullptr; AppGetMeidaInfo param; mAppMonitor->GetMediaInfo(param); @@ -157,6 +162,7 @@ void SixFrameHandle::RequestGetMediaInfo(const std::string &url, ResponseHandle ResponseGetMediaInfo(result, param); resultStr = cJSON_Print(result); responseHandle(resultStr, context); + LogInfo("resultStr = \n%s\n", resultStr); free(resultStr); cJSON_Delete(result); } @@ -164,9 +170,9 @@ void inline SixFrameHandle::ResponseGetMediaInfo(cJSON *result, const AppGetMeid { cJSON *info = nullptr; cJSON_AddItemToObject(result, CJSON_INFO_STRING, info = cJSON_CreateObject()); - cJSON_AddStringToObject(info, "uuid", param.mRtspUrl.c_str()); - cJSON_AddStringToObject(info, "softver", param.mTransport.c_str()); - cJSON_AddNumberToObject(info, "otaver", param.mPort); + cJSON_AddStringToObject(info, "rtsp", param.mRtspUrl.c_str()); + cJSON_AddStringToObject(info, "transport", param.mTransport.c_str()); + cJSON_AddNumberToObject(info, "port", param.mPort); } void SixFrameHandle::RequestGetSdCardInfo(const std::string &url, ResponseHandle responseHandle, void *context) { diff --git a/utils/WebServer/build/webserver.cmake b/utils/WebServer/build/webserver.cmake index bf903f7..61a3750 100644 --- a/utils/WebServer/build/webserver.cmake +++ b/utils/WebServer/build/webserver.cmake @@ -6,6 +6,7 @@ if (NOT DEFINED GOAHEAD_CONFIG_FILE_PATH) set(GOAHEAD_CONFIG_FILE_PATH "${PLATFORM_PATH}/cmake-shell/") add_definitions(-DGOAHEAD_CONFIG_FILE_PATH=\"./\") else() - add_definitions(-DGOAHEAD_CONFIG_FILE_PATH=\"${GOAHEAD_CONFIG_FILE_PATH}\") + add_definitions(-DGOAHEAD_CONFIG_FILE_PATH=\"${GOAHEAD_CONFIG_FILE_PATH}\") # 代码中使用该宏定义下的配置文件 + set(GOAHEAD_CONFIG_FILE_PATH "${PLATFORM_PATH}/cmake-shell/") # CMakeLists.txt文件会把配置文件拷贝到此目录 endif() add_definitions(-DGOAHEAD_DOCUMENTS_PATH=\"${GOAHEAD_DOCUMENTS_PATH}\") diff --git a/utils/WebServer/src/WebServer.cpp b/utils/WebServer/src/WebServer.cpp index 85f85bf..2ed7a5c 100644 --- a/utils/WebServer/src/WebServer.cpp +++ b/utils/WebServer/src/WebServer.cpp @@ -139,7 +139,7 @@ StatusCode WebServerInit(const WebServerParam webParam) snprintf(routePath, BUF_LENGTH, "%s/route.txt", GOAHEAD_CONFIG_FILE_PATH); snprintf(authPath, BUF_LENGTH, "%s/auth.txt", GOAHEAD_CONFIG_FILE_PATH); snprintf(listen, BUF_LENGTH, "%s:%d", webParam.mIp, webParam.mPort); - initPlatform(); + // initPlatform(); if (websOpen(documents, routePath) < 0) { LogError("Cannot initialize server. Exiting.\n"); return CreateStatusCode(STATUS_CODE_NOT_OK);