Bug 38: NTP-Zeitserver-Feld korrigiert (HTTP 400)
/system/ntp/client hat in RouterOS 7.x kein "servers"-Feld — die Server liegen in einer eigenen Liste /system ntp client servers. Schema in RouterOSSchemaCatalog.swift aufgeteilt (Singleton enabled/mode + neue Listen-Menü-Schema mit Feld "address"), zusätzlich "enabled" auf "disabled" korrigiert (RouterOS-Konvention für Listen-Einträge). Live gegen echten Router bestätigt. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -658,17 +658,32 @@ enum RouterOSSchemaCatalog {
|
||||
menuPath: "/system ntp client", restPath: "system/ntp/client", category: .system,
|
||||
displayName: "Zeitserver (NTP)",
|
||||
summary: "Hält die Router-Uhr über einen Zeitserver synchron.",
|
||||
explanation: "",
|
||||
explanation: "Die Server-Liste selbst liegt in einem eigenen Menü (\"NTP-Zeitserver-Liste\") — hier nur Ein/Aus und Modus.",
|
||||
warning: "Falsche Systemzeit kann Zertifikatsprüfungen (HTTPS/REST) und Log-Zeitstempel durcheinanderbringen.",
|
||||
fields: [
|
||||
RouterOSFieldSchema(key: "enabled", label: "Aktiviert", kind: .bool,
|
||||
help: "Zeitsynchronisation ein-/ausschalten.", defaultValue: "yes"),
|
||||
RouterOSFieldSchema(key: "servers", label: "Zeitserver", kind: .text,
|
||||
help: "Ein oder mehrere Server, kommagetrennt, z.B. pool.ntp.org.")
|
||||
RouterOSFieldSchema(key: "mode", label: "Modus", kind: .enumPick(options: [
|
||||
"unicast", "broadcast", "multicast", "manycast"
|
||||
]), help: "Fast immer \"unicast\" (direkte Anfrage an feste Server).", defaultValue: "unicast")
|
||||
],
|
||||
listColumns: ["servers"],
|
||||
listColumns: ["enabled", "mode"],
|
||||
isSingleton: true
|
||||
),
|
||||
RouterOSMenuSchema(
|
||||
menuPath: "/system ntp client servers", restPath: "system/ntp/client/servers", category: .system,
|
||||
displayName: "NTP-Zeitserver-Liste",
|
||||
summary: "Die Zeitserver, die der Client abfragt.",
|
||||
explanation: "\"servers\" ist bei RouterOS 7.x kein Feld am NTP-Client selbst, sondern eine eigene Liste — jeder Server ist ein eigener Eintrag hier (statt kommagetrennt in einem Textfeld).",
|
||||
fields: [
|
||||
RouterOSFieldSchema(key: "address", label: "Adresse", kind: .text,
|
||||
help: "Hostname oder IP eines Zeitservers, z.B. pool.ntp.org.", required: true),
|
||||
RouterOSFieldSchema(key: "disabled", label: "Deaktiviert", kind: .bool,
|
||||
help: "Diesen Server deaktivieren, ohne ihn zu löschen.", defaultValue: "no"),
|
||||
RouterOSFieldSchema(key: "comment", label: "Kommentar", kind: .text, help: "Nur zur eigenen Wiedererkennung.")
|
||||
],
|
||||
listColumns: ["address", "disabled"]
|
||||
),
|
||||
generic("/system logging", "system/logging", .system, "Protokollierung",
|
||||
"Was der Router mitschreibt und wohin (Speicher, Datei, Remote-Syslog, E-Mail).",
|
||||
"Besteht aus \"rules\" (was protokolliert wird) und \"actions\" (wohin) — hier generischer Zugriff, verwandte Teile über \"Eigener Menüpfad\" (z.B. \"/system logging action\")."),
|
||||
|
||||
Reference in New Issue
Block a user