getTimestamp() - $lastMsg->getTimestamp()) / 60; if ($diffMinutes > 20) { $shouldExpire = true; } } if ($shouldExpire) { queryTimed("UPDATE Tasks SET CompletedOn = NOW() WHERE ID = ?", [$chat['ID']]); $expiredCount++; $expiredIds[] = (int) $chat['ID']; } } jsonResponse([ 'OK' => true, 'MESSAGE' => "Expired {$expiredCount} stale chat(s)", 'EXPIRED_TASK_IDS' => $expiredIds, 'CHECKED_COUNT' => count($staleChats), ]); } catch (Exception $e) { jsonResponse(['OK' => false, 'ERROR' => 'server_error', 'MESSAGE' => $e->getMessage()]); }