From cc0bec97b54762284e0cd01ad8c4382ecb73389b Mon Sep 17 00:00:00 2001 From: bonamin Date: Wed, 15 Oct 2025 12:44:10 +0300 Subject: [PATCH] Added Network Info Command --- .../CommandHandler/CommandHandler.cpp | 17 +++++++++++++++++ .../CommandHandler/CommandHandler.hpp | 1 + 2 files changed, 18 insertions(+) diff --git a/vesper/src/Communication/CommandHandler/CommandHandler.cpp b/vesper/src/Communication/CommandHandler/CommandHandler.cpp index 38807b8..4d247c9 100644 --- a/vesper/src/Communication/CommandHandler/CommandHandler.cpp +++ b/vesper/src/Communication/CommandHandler/CommandHandler.cpp @@ -263,6 +263,8 @@ void CommandHandler::handleSystemInfoCommand(JsonVariant contents, const Message handleRollbackFirmwareCommand(context); } else if (action == "get_firmware_status") { handleGetFirmwareStatusCommand(context); + } else if (action == "network_info") { + handleNetworkInfoCommand(context); } else if (action == "get_full_settings") { handleGetFullSettingsCommand(context); } else { @@ -789,6 +791,21 @@ void CommandHandler::handleGetFirmwareStatusCommand(const MessageContext& contex LOG_DEBUG("Firmware status requested: %s", stateStr.c_str()); } +void CommandHandler::handleNetworkInfoCommand(const MessageContext& context) { + StaticJsonDocument<256> response; + response["status"] = "SUCCESS"; + response["type"] = "network_info"; + + JsonObject payload = response.createNestedObject("payload"); + payload["ip"] = WiFi.localIP().toString(); + payload["gateway"] = WiFi.gatewayIP().toString(); + payload["dns"] = WiFi.dnsIP().toString(); + + String responseStr; + serializeJson(response, responseStr); + sendResponse(responseStr, context); +} + void CommandHandler::handleGetFullSettingsCommand(const MessageContext& context) { LOG_DEBUG("Full settings requested"); diff --git a/vesper/src/Communication/CommandHandler/CommandHandler.hpp b/vesper/src/Communication/CommandHandler/CommandHandler.hpp index 2a627f9..f844482 100644 --- a/vesper/src/Communication/CommandHandler/CommandHandler.hpp +++ b/vesper/src/Communication/CommandHandler/CommandHandler.hpp @@ -131,6 +131,7 @@ private: void handleCommitFirmwareCommand(const MessageContext& context); void handleRollbackFirmwareCommand(const MessageContext& context); void handleGetFirmwareStatusCommand(const MessageContext& context); + void handleNetworkInfoCommand(const MessageContext& context); void handleGetFullSettingsCommand(const MessageContext& context); // Network configuration