Add uptime command

This commit is contained in:
UA1ZBE
2026-07-22 10:41:45 +03:00
parent 966ef26c5e
commit d215c12038

View File

@@ -148,7 +148,7 @@ public:
while (*cmd == ' ') cmd++;
if (strcmp(cmd, "help") == 0) {
defer_response("help:ohrana on,ohrana off,relay1 on,relay1 off,relay2 on,relay2 off,relay,status,ver,scan,reboot");
defer_response("help:ohrana on,ohrana off,relay1 on,relay1 off,relay2 on,relay2 off,relay,status,ver,scan,uptime,reboot");
} else if (strcmp(cmd, "ohrana on") == 0) {
g_armed = true; digitalWrite(PIN_RELAY_1, LOW); saveSecurityConfig(); defer_response("ohrana on ok");
} else if (strcmp(cmd, "ohrana off") == 0) {
@@ -180,6 +180,16 @@ public:
float sum = 0;
for (int j = 0; j < 20; j++) { sum += radio_driver.getCurrentRSSI(); delay(50); }
char r[32]; snprintf(r, sizeof(r), "noise:%.0fdBm", sum / 20); defer_response(r);
} else if (strcmp(cmd, "uptime") == 0) {
unsigned long sec = (millis() - g_boot_time) / 1000;
int d = sec / 86400; sec %= 86400;
int h = sec / 3600; sec %= 3600;
int m = sec / 60;
char r[64];
if (d > 0) snprintf(r, sizeof(r), "uptime:%dd %dh %dm", d, h, m);
else if (h > 0) snprintf(r, sizeof(r), "uptime:%dh %dm", h, m);
else snprintf(r, sizeof(r), "uptime:%dm", m);
defer_response(r);
} else if (strcmp(cmd, "reboot") == 0) {
send_text("rebooting");
delay(100);