From b420a0e6f4d3dabeb6071c2e3fbc2d595a0cd4b9 Mon Sep 17 00:00:00 2001 From: Gunnar Skjold Date: Thu, 6 Oct 2022 17:12:12 +0200 Subject: [PATCH] Limit peak count if over 5 --- src/mqtt/HomeAssistantMqttHandler.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/mqtt/HomeAssistantMqttHandler.cpp b/src/mqtt/HomeAssistantMqttHandler.cpp index 64d7f6d8..9a563664 100644 --- a/src/mqtt/HomeAssistantMqttHandler.cpp +++ b/src/mqtt/HomeAssistantMqttHandler.cpp @@ -58,7 +58,9 @@ bool HomeAssistantMqttHandler::publish(AmsData* data, AmsData* previousState, En } String peaks = ""; - for(uint8_t i = 1; i <= ea->getConfig()->hours; i++) { + uint8_t peakCount = ea->getConfig()->hours; + if(peakCount > 5) peakCount = 5; + for(uint8_t i = 1; i <= peakCount; i++) { if(!peaks.isEmpty()) peaks += ","; peaks += String(ea->getPeak(i)); } @@ -240,6 +242,8 @@ bool HomeAssistantMqttHandler::publishSystem(HwTools* hw, EntsoeApi* eapi, Energ #endif String haUrl = "http://" + haUID + ".local/"; // Could this be necessary? haUID.replace("-", "_"); + uint8_t peakCount = ea->getConfig()->hours; + if(peakCount > 5) peakCount = 5; uint8_t peaks = 0; for(int i=0;igetCurrency()); } if(strncmp(sensor.path, "peaks[", 6) == 0) { - if(peaks >= ea->getConfig()->hours) continue; + if(peaks >= peakCount) continue; peaks++; } snprintf_P(json, BufferSize, HADISCOVER_JSON,