Zeitplan in der Oberflaeche einstellbar
Takt und Schalter der beiden Abgleiche standen in der Umgebung und liessen sich nur mit einem Neustart aendern. Jetzt stehen sie unter Verwaltung -> Zeitplan, je Lauf einzeln: ob er automatisch laeuft, in welchem Abstand, beim Kaeufe-Abgleich zusaetzlich der seltenere Takt fuer ruhende Konten und ab wann ein Konto als ruhend gilt, beim Forumslauf die Stunde, vor der nicht gelaufen wird. Die Abstaende stehen in Minuten - damit laesst sich alles ausdruecken -, und daneben steht, was das in Stunden bedeutet, damit niemand im Kopf rechnet. Unter einer Viertelstunde geht nicht: beide Abgleiche greifen auf Server zu, die der Community gehoeren. Aenderungen greifen sofort, ohne Neustart. Die Vorgaben sind die bisherigen Werte, sie stehen in der Migration. SCHEDULE_ENABLED und FORUM_SCAN_HOUR entfallen damit.
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
-- Der Zeitplan wird einstellbar. Bisher standen Takt und Schalter in der
|
||||
-- Umgebung und liessen sich nur mit einem Neustart aendern.
|
||||
CREATE TABLE IF NOT EXISTS "ScheduleSetting" (
|
||||
"name" TEXT NOT NULL,
|
||||
"enabled" BOOLEAN NOT NULL DEFAULT true,
|
||||
"intervalMinutes" INTEGER NOT NULL DEFAULT 120,
|
||||
"idleIntervalMinutes" INTEGER,
|
||||
"idleAfterDays" INTEGER,
|
||||
"onlyAfterHour" INTEGER,
|
||||
"updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
CONSTRAINT "ScheduleSetting_pkey" PRIMARY KEY ("name")
|
||||
);
|
||||
|
||||
-- Die bisherigen Werte als Ausgangspunkt: Kaeufe alle zwei Stunden, ruhende
|
||||
-- Konten alle sechs, ruhend ab drei Jahren; das Forum einmal taeglich,
|
||||
-- fruehestens ab vier Uhr.
|
||||
INSERT INTO "ScheduleSetting"
|
||||
("name", "enabled", "intervalMinutes", "idleIntervalMinutes", "idleAfterDays", "onlyAfterHour")
|
||||
VALUES
|
||||
('gextension', true, 120, 360, 1095, NULL),
|
||||
('forum', true, 1440, NULL, NULL, 4)
|
||||
ON CONFLICT ("name") DO NOTHING;
|
||||
@@ -506,3 +506,26 @@ model CharacterLink {
|
||||
|
||||
@@index([characterId])
|
||||
}
|
||||
|
||||
/// Was der Zeitplan tun soll. Steht in der Datenbank statt in der Umgebung,
|
||||
/// damit sich der Takt ändern lässt, ohne den Dienst neu zu starten.
|
||||
model ScheduleSetting {
|
||||
/// "gextension" oder "forum".
|
||||
name String @id
|
||||
enabled Boolean @default(true)
|
||||
|
||||
/// Abstand zwischen zwei Läufen, in Minuten.
|
||||
intervalMinutes Int @default(120)
|
||||
|
||||
/// Nur beim Käufe-Abgleich: der seltenere Takt für Konten, bei denen lange
|
||||
/// nichts gekauft wurde, und ab wann ein Konto als ruhend gilt.
|
||||
idleIntervalMinutes Int?
|
||||
idleAfterDays Int?
|
||||
|
||||
/// Nur beim Forumslauf: frühestens ab dieser Stunde. Damit lässt sich ein
|
||||
/// täglicher Lauf in die Nacht legen, statt ihn irgendwann am Tag
|
||||
/// loszuschicken.
|
||||
onlyAfterHour Int?
|
||||
|
||||
updatedAt DateTime @updatedAt
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user