In diesem Forum können Extension-Autoren ihre Extensions vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
DocSommer hat geschrieben: 28.05.2025 16:16
das Zufallsprinzip verstehe ich nicht
Hat mit Zufall nichts zu tun. Soweit ich weiss, arbeitet das Cron System unabhängig vom Benutzer Kontext und reagiert auf bestimmte Trigger die von jedem beliebigen "User" ausgelöst werden können. Ob das jetzt ein Admin, Mod, User, Gast oder Bot ist, ist dabei irrelevant. Kurz gesagt tragen alle diese verschiedenen User permanent dazu bei, dass phpBB einige Hintergrund Jobs erledigt wie Statistik aktualisieren, Aufräumarbeiten oder eben auch Jobs die eine Ext selber in Auftrag gegeben hat.
DocSommer hat geschrieben: 28.05.2025 16:16
das Zufallsprinzip verstehe ich nicht
Hat mit Zufall nichts zu tun. Soweit ich weiss, arbeitet das Cron System unabhängig vom Benutzer Kontext und reagiert auf bestimmte Trigger die von jedem beliebigen "User" ausgelöst werden können. Ob das jetzt ein Admin, Mod, User, Gast oder Bot ist, ist dabei irrelevant. Kurz gesagt tragen alle diese verschiedenen User permanent dazu bei, dass phpBB einige Hintergrund Jobs erledigt wie Statistik aktualisieren, Aufräumarbeiten oder eben auch Jobs die eine Ext selber in Auftrag gegeben hat.
Danke jetzt leuchtet mir das ein - wäre vielleicht nett bei diesen Events einfach einen fiktiven Nutzer "System" oder "Cron" im Log zu notieren.
DocSommer hat geschrieben: 04.06.2025 13:27
wäre vielleicht nett bei diesen Events einfach einen fiktiven Nutzer "System" oder "Cron" im Log zu notieren.
nach Durchsicht der Mitgliederliste des von mir betreuten Forums ist festzustellen, dass es (aktuell) insgesamt 416 Mitglieder gibt, die nach Sortierung über "Letzte Aktivität" sich zwar angemeldet haben, aber noch nie aktiv waren. Das sollte beim php-Userreminder der Gruppe "Schläfer" entsprechen.
Wenn ich in den Erweiterungen den Bereich "Schläfer" im Userreminder öffne, erhalte ich für insgesamt 1108 Einträge, die "die nach Registrierung und Aktivierung noch nie online waren".
Bei Stichproben konnte ich feststellen, dass einige Mitglieder aus der Liste im Userreminder einen Datumseintrag unter "Letzte Aktivität:" haben, also eigentlich nicht in die Kategorie Schläfer fallen.
Ist der Fehler in den Einstellungen zu suchen oder wo ist das Problem?
1. phpBB Version 3.3.15 / php Version 8.1.30
2. Anzahl Benutzer 4363
3. Userreminder for phpbb Version 1.9.1, seit 24.06.25 als Update neu installiert, davor Version 1.8.1 (seit 24.09.2024), die allerdings bis gestern (24.6.) nur als deaktivierte Erweiterung "installiert" war.
Punkt 1 ist okay, damit kommt die Erweiterung klar.
Punkt 2 lässt mich aufatmen, weil das sehr deutlich unter 10.000 Mitgliedern liegt. Ich habe von irgendwo her in Erinnerung, dass irgendeine Datenbank bei Zuweisungen von einer Tabellenspalte in eine andere eine "magische" Grenze von 10.000 Datensätzen haben soll, versucht man mehr Datensätze in einem Schritt zuzuweisen, kann es wohl zu Fehlern kommen. Habe aber nicht mehr finden können, wo ich das gelesen habe.
Passt bei euch also auf jeden Fall.
Punkt 3. enthält wohl die Lösung. Bei der (ersten) Installation übernimmt Userreminder aus der Spalte user_lastvisit der USERS_TABLE den Zeitpunkt des letzten Besuchs der einzelnen Mitglieder in eine eigene Spalte (user_lastvisit ist ungenau, weil es bei dauernd angemeldeten Mitgliedern keine Änderung erfährt, deshalb wurde die neue Spalte user_last_active eingeführt, weil es Probleme mit der Feststellung der ungelesenen Beiträge gab)
Loggt sich ein Mitglied ein, wird dieser Zeitpunkt durch Userreminder in dessen eigener Spalte der USERS_TABLE festgehalten und bildet die Referenz für die Berechnung der inaktiven Mitglieder, der Nullposter und der Schläfer.
Wenn ihr Userreminder seit 9 Monaten deaktiviert habt, wurden die Zeitpunkte der Anmeldungen also nicht aktualisiert. Das bedeutet, dass alle Mitglieder, die sich in dieser Zeit registriert haben, dort eine 0 stehen haben und deshalb als Schläfer gelten.
Ihr müsstet diese Spalte also "gewaltsam" aktualisieren, das geht nur durch eine komplette Deinstallation und Neuinstallation, also Userreminder deaktivieren, alle Arbeitsdaten löschen und dann wieder aktivieren. Damit wird die Spalte der letzten Anmeldung auf den neuesten Stand gebracht und die Anzeige sollte korrekt sein.