Die Probe liest zurück, was der Server wirklich eingetragen hat

Ein Eintrag unter „Bekannte Proxys", der gespeichert, aber nicht
übernommen wurde, sieht von außen genauso aus wie gar keiner — und bei
der Fehlersuche unterscheidet das alles.

`GET /System/Configuration/network` führt `KnownProxies`. Zusammen mit
`IsLocal` und `IsInNetwork` steht damit in drei Zeilen, woran es liegt:
kein Eintrag, der falsche Eintrag, oder fehlender Neustart.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Scarriffle
2026-09-27 17:28:10 +02:00
co-authored by Claude Opus 5
parent 539ea0aacb
commit e4e6cc6cbd
@@ -29,6 +29,15 @@ struct Endpunktlage: Decodable {
}
}
/// Die Netzwerkeinstellungen des Servers — nur der Teil, der hier zählt.
struct Netzwerkeinstellung: Decodable {
let knownProxies: [String]?
private enum CodingKeys: String, CodingKey {
case knownProxies = "KnownProxies"
}
}
/// Was in einer Playlist steht.
struct Leiter {
var stufen: [(bandbreite: Int, auflösung: String?)] = []
@@ -182,6 +191,22 @@ func jellyfinLeiter(host: String) async {
print(" Host, und der Eintrag unter Bekannte Proxys muss 127.0.0.1")
print(" lauten (bzw. die Adresse im Docker-Netz), nicht 192.168.x.")
}
// **Was der Server tatsächlich eingetragen hat.**
//
// Ein Eintrag, der gespeichert, aber nicht übernommen wurde, sieht
// von außen genauso aus wie gar keiner. Hier steht, was gilt.
if let netz = try? await client.send(
JellyfinRequest(path: "/System/Configuration/network"),
as: Netzwerkeinstellung.self
) {
let proxys = netz.knownProxies ?? []
if proxys.isEmpty {
print(" Bekannte Proxys: KEINE eingetragen.")
} else {
print(" Bekannte Proxys: \(proxys.joined(separator: ", "))")
}
}
if lage.isInNetwork {
print("Der Server hält diese Verbindung für LOKAL.")
print(" → Eine Leiter wird er hier grundsätzlich nicht liefern,")