Reduce ping logging and detect API version
This commit is contained in:
@@ -119,7 +119,6 @@ struct MainView: View {
|
||||
}
|
||||
pingAllServers()
|
||||
pingTimer = Timer.scheduledTimer(withTimeInterval: 10.0, repeats: true) { _ in
|
||||
print("📡 [MainView] Ping timer firing")
|
||||
pingAllServers()
|
||||
}
|
||||
}
|
||||
@@ -147,7 +146,7 @@ struct MainView: View {
|
||||
Task {
|
||||
defer { isFetchingInfo = false }
|
||||
do {
|
||||
let api = try await APIFactory.detectAndCreateAPI(baseURL: baseURL)
|
||||
let api = try await APIFactory.detectAndCreateAPI(baseURL: baseURL, apiKey: apiKey)
|
||||
let info = try await api.fetchServerSummary(apiKey: apiKey)
|
||||
await MainActor.run {
|
||||
if let index = servers.firstIndex(where: { $0.id == id }) {
|
||||
@@ -177,45 +176,7 @@ struct MainView: View {
|
||||
private struct PingResponse: Codable {
|
||||
let response: String
|
||||
}
|
||||
|
||||
// func pingServer(_ server: Server) async -> Bool {
|
||||
// let hostname = server.hostname
|
||||
// guard let url = URL(string: "https://\(hostname)/api/v2/ping") else {
|
||||
// return false
|
||||
// }
|
||||
//
|
||||
// var request = URLRequest(url: url)
|
||||
// request.httpMethod = "GET"
|
||||
// request.timeoutInterval = 5
|
||||
// request.setValue("application/json", forHTTPHeaderField: "Content-Type")
|
||||
//
|
||||
// let apiKey = KeychainHelper.loadApiKey(for: hostname)?.trimmingCharacters(in: .whitespacesAndNewlines) ?? ""
|
||||
// request.setValue(apiKey, forHTTPHeaderField: "X-API-KEY")
|
||||
//
|
||||
// do {
|
||||
// let (data, response) = try await URLSession.shared.data(for: request)
|
||||
// if let httpResponse = response as? HTTPURLResponse, httpResponse.statusCode == 200 {
|
||||
// do {
|
||||
// let decoded = try JSONDecoder().decode(PingResponse.self, from: data)
|
||||
// if decoded.response == "pong" {
|
||||
// return true
|
||||
// } else {
|
||||
// print("❌ Unexpected response: \(decoded.response)")
|
||||
// return false
|
||||
// }
|
||||
// } catch {
|
||||
// print("❌ Failed to decode JSON: \(error)")
|
||||
// return false
|
||||
// }
|
||||
// } else {
|
||||
// return false
|
||||
// }
|
||||
// } catch {
|
||||
// print("[Ping] \(server.hostname): \(error.localizedDescription)")
|
||||
// return false
|
||||
// }
|
||||
// }
|
||||
|
||||
|
||||
func pingAllServers() {
|
||||
for (index, server) in servers.enumerated() {
|
||||
Task {
|
||||
@@ -224,7 +185,9 @@ struct MainView: View {
|
||||
await MainActor.run {
|
||||
servers[index].pingable = pingable
|
||||
}
|
||||
print("📶 [MainView] Ping \(server.hostname): \(pingable ? "online" : "offline")")
|
||||
if !pingable {
|
||||
print("📶 [MainView] Ping \(server.hostname): offline")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user