@@ -1051,11 +1051,7 @@ void ChargeTracker::register_urls()
10511051#if MODULE_REMOTE_ACCESS_AVAILABLE()
10521052
10531053 server.on_HTTPThread (" /charge_tracker/send_charge_log" , HTTP_PUT, [this ](WebServerRequest request) {
1054- if (this ->send_in_progress ) {
1055- return request.send_plain (429 , " Another upload is already in progress" );
1056- }
1057-
1058- std::unique_ptr<ChargeLogGenerationLockHelper> lock_helper = ChargeLogGenerationLockHelper::try_lock (GenerationState::RemoteSend);
1054+ std::unique_ptr<ChargeLogGenerationLockHelper> lock_helper = ChargeLogGenerationLockHelper::try_lock (GenerationState::ManualRemoteSend);
10591055 if (lock_helper == nullptr ) {
10601056 return request.send_plain (429 , " Another charge log generation is already in progress" );
10611057 }
@@ -1167,7 +1163,7 @@ void ChargeTracker::register_urls()
11671163 if (config.get (" remote_upload_configs" )->count () > 0 ) {
11681164 task_scheduler.scheduleWithFixedDelay ([this ]() {
11691165 // only send when no charge is in progress. This avoids not sending a charge that started at the end of the last month
1170- if (this ->send_in_progress || this -> currentlyCharging ()) {
1166+ if (this ->currentlyCharging ()) {
11711167 return ;
11721168 }
11731169
@@ -1244,7 +1240,6 @@ static esp_err_t check_remote_client_status(std::unique_ptr<RemoteUploadRequest>
12441240 });
12451241
12461242 logger.printfln (" Charge-log generation and remote upload completed successfully. Status: %d" , status);
1247- charge_tracker.send_in_progress = false ;
12481243 upload_args->remote_client ->close_chunked_request ();
12491244 } else {
12501245 logger.printfln (" Charge-log generation and remote upload failed. Status: %d" , status);
@@ -1567,7 +1562,6 @@ static void upload_charge_logs_task(void *arg)
15671562#endif
15681563 }
15691564
1570- charge_tracker.send_in_progress = false ;
15711565#if MODULE_WATCHDOG_AVAILABLE()
15721566 watchdog.remove (wd_handle);
15731567#endif
@@ -1576,8 +1570,6 @@ static void upload_charge_logs_task(void *arg)
15761570
15771571void ChargeTracker::upload_charge_logs (const int8_t retry_count)
15781572{
1579- send_in_progress = true ;
1580-
15811573 uint32_t remote_upload_config_count = config.get (" remote_upload_configs" )->count ();
15821574
15831575 RemoteUploadRequest *args = new RemoteUploadRequest;
@@ -1590,7 +1582,6 @@ void ChargeTracker::upload_charge_logs(const int8_t retry_count)
15901582 args->generation_lock = ChargeLogGenerationLockHelper::try_lock (GenerationState::RemoteSend);
15911583 if (args->generation_lock == nullptr ) {
15921584 logger.printfln (" Could not acquire charge log generation lock for remote upload" );
1593- send_in_progress = false ;
15941585 delete args;
15951586 return ;
15961587 }
@@ -1599,7 +1590,6 @@ void ChargeTracker::upload_charge_logs(const int8_t retry_count)
15991590
16001591 if (ret != pdPASS_safe) {
16011592 logger.printfln (" ChargeLogUpload task could not be created: %s (0x%lx)" , esp_err_to_name (ret), static_cast <uint32_t >(ret));
1602- send_in_progress = false ;
16031593 delete args;
16041594 }
16051595}
@@ -1613,8 +1603,6 @@ void ChargeTracker::start_charge_log_upload_for_config(const uint8_t config_inde
16131603 return ;
16141604 }
16151605
1616- send_in_progress = true ;
1617-
16181606 RemoteUploadRequest *task_args = new RemoteUploadRequest;
16191607 task_args->config_count = remote_upload_config_count;
16201608 task_args->cookie = cookie;
@@ -1633,7 +1621,6 @@ void ChargeTracker::start_charge_log_upload_for_config(const uint8_t config_inde
16331621
16341622 if (ret != pdPASS_safe) {
16351623 logger.printfln (" ChargeLogUpload task could not be created: %s (0x%lx)" , esp_err_to_name (ret), static_cast <uint32_t >(ret));
1636- send_in_progress = false ;
16371624 }
16381625}
16391626#endif
0 commit comments