Skip to content
Snippets Groups Projects

Resend Data capabilities

Merged Zoe Pfister requested to merge 29-resending-of-data-if-network-connection-was-lost into develop
2 files
+ 12
22
Compare changes
  • Side-by-side
  • Inline
Files
2
@@ -6,21 +6,18 @@
#include "Utilities.h"
void ResendManager::init() {
// log
Serial.println("createResendDirectory");
createResendDirectory();
// log
Serial.println("getLastResendFileId");
uint lastResendFileId = getLastResendFileId();
nextResendFileId = lastResendFileId + 1;
Serial.println("nextResendFileId: " + String(nextResendFileId));
esp_log_write(ESP_LOG_INFO, "ResendManager", "nextResendFileId: %d", nextResendFileId);
}
uint ResendManager::getLastResendFileId() const { // get the next file id to be resend
auto lastResendFileName = getLastFileInDirectory(resendDirectoryPath.c_str());
if (lastResendFileName.has_value()) {
// if there was a file, get the id from the filename
Serial.println("Last resend file name: " + lastResendFileName.value());
esp_log_write(ESP_LOG_INFO, "ResendManager", "lastResendFileName: %s", lastResendFileName.value().c_str());
uint lastResendFileId = std::stoul(lastResendFileName.value().c_str());
return lastResendFileId;
} else {
@@ -56,9 +53,9 @@ std::optional<ResendPointType> ResendManager::loadNextToBeResendMessage() {
void ResendManager::deleteResendMessage(const String &filename) {
auto filePath = resendDirectoryPath + "/" + filename;
if (SD.remove(filePath.c_str())) {
Serial.println("File deleted " + filePath);
esp_log_write(ESP_LOG_INFO, "ResendManager", "Deleted file: %s", filePath.c_str());
} else {
Serial.println("Delete failed " + filePath);
esp_log_write(ESP_LOG_ERROR, "ResendManager", "Failed to delete file: %s", filePath.c_str());
throw;
}
}
Loading