Was dieses Plugin macht
Die Nutzerbereinigung löscht Konten, die niemand mehr verwendet. Sie prüft, wie lange eine Person inaktiv war, verschickt eine Warn-E-Mail und löscht das Konto, wenn die Person innerhalb einer zweiten Frist nicht zurückkehrt. Gelöscht wird vollständig über Moodle, inklusive Lernhistorie.
Ohne bewusste Aktivierung passiert nichts. Bei Neuinstallationen ist der geplante Task Nutzerbereinigung deaktiviert, und Moodle führt ihn nur aus, solange der Block unter Website-Administration → Plugins → Blöcke → Übersicht aktiviert ist (nach der Installation ist er deaktiviert). Gelöscht wird ein Konto nur, nachdem tatsächlich eine Warn-E-Mail an es versendet wurde und die Frist abgelaufen ist.
Für wen ist es
| Rolle | Aufgabe in diesem Plugin |
|---|---|
| Site-Administration (eLeDia) | Fristen und Ausnahmen konfigurieren, Task aktivieren und planen, Log prüfen |
| Lernende | Erhält die Warn-E-Mail und verhindert die Löschung durch Einloggen |
Führungskräfte, Trainer/innen und Plattform-Administration haben hier keine Oberfläche.
Kernkonzepte
- Inaktivität — im aktuellen Release aus dem letzten Zugriff abgeleitet. Bei Konten ohne jeden Login zählt stattdessen der erste Zugriff bzw. das Änderungsdatum des Kontos.
- Warnphase — die Zeit zwischen Warn-E-Mail und Löschung. Sie wird getrennt von der Inaktivitätsfrist eingestellt.
- Bereinigungsliste — die interne Liste aller gewarnten Personen. Wer sich wieder einloggt, wird beim nächsten Lauf aus der Liste entfernt; das Konto ist dann wieder sicher.
Abläufe nach Rolle
Site-Administration: Bereinigung konfigurieren
- Website-Administration → Plugins → Blöcke → Nutzerbereinigung öffnen.
- Tage zur Information setzen — nach wie vielen inaktiven Tagen gewarnt wird. Standard: 120.
- Tage zum Löschen setzen — wie viele Tage nach der Warn-E-Mail gelöscht wird. Standard: 120.
- Nutzer mit Kurseinschreibungen ignorieren schützt alle Personen mit mindestens einer aktiven Einschreibung. Bei Neuinstallationen ist die Option aktiviert; deaktivieren Sie sie nur, wenn auch eingeschriebene Personen bereinigt werden sollen.
- Optional Keine Warnung verschicken sondern gleich löschen aktivieren. Dann gilt Tage zum Löschen als Inaktivitätsfrist.
- Unter Nicht berücksichtigte Rollen alle systemweiten Rollen auswählen, deren Inhaber:innen nie gelöscht werden dürfen.
- Speichern.
Beide Fristen müssen länger sein als das Intervall des geplanten Tasks, sonst kann jemand im selben Zeitfenster gewarnt und gelöscht werden.
Site-Administration: Task aktivieren und planen
- Website-Administration → Server → Geplante Tasks öffnen.
- Den Eintrag Nutzerbereinigung suchen und bearbeiten.
- Deaktiviert abwählen, um die Bereinigung einzuschalten. Der Task wird deaktiviert ausgeliefert, und das Update auf 0.2.1 schaltet ihn auch auf bestehenden Seiten ab und verwirft alle bisherigen Warnungen. Nach dem Wiedereinschalten wird jedes inaktive Konto neu gewarnt und frühestens nach Ablauf der Frist ab dieser Warnung gelöscht.
- Ausgeliefert wird wöchentlich, sonntags 02:00 Uhr. Bei kurzen Fristen auf täglich umstellen.
- Prüfen, ob der Block unter Website-Administration → Plugins → Blöcke → Übersicht aktiviert ist. Solange er deaktiviert ist, überspringt Moodle den Task, und die Liste der geplanten Tasks zeigt Plugin deaktiviert.
- Für einen beobachteten Lauf den Task auf der Kommandozeile starten. Dieser Aufruf startet die Bereinigung sofort, auch wenn Task oder Block deaktiviert sind:
php admin/cli/scheduled_task.php --execute='\block_eledia_usercleanup\task\cron_task'
Das Log zeigt, wie viele inaktive Konten gefunden wurden, wer angeschrieben wurde, an wen keine Warnung versendet werden konnte und wer gelöscht wurde.
Site-Administration: Block als Verknüpfung setzen
- Startseite öffnen und Bearbeiten einschalten.
- Block Nutzerbereinigung hinzufügen.
- Der Block zeigt Administrator:innen einen Link Konfiguration Nutzerbereinigung.
Der Block auf der Startseite ist nur eine Verknüpfung; die Bereinigung braucht ihn nicht. Sie braucht aber den unter Übersicht aktivierten Block.
Lernende: Ein markiertes Konto behalten
- Die Warn-E-Mail lesen — sie nennt die Plattform und die verbleibenden Tage.
- Vor Ablauf der Frist auf der Plattform einloggen.
- Der nächste Bereinigungslauf entfernt die Markierung automatisch. Es ist nichts weiter zu tun, und es gibt keine Bestätigungsmail.
Relevante Einstellungen
| Einstellung | Bedeutung |
|---|---|
| Tage zur Information | Inaktive Tage bis zur Warn-E-Mail |
| Tage zum Löschen | Tage zwischen Warn-E-Mail und Löschung |
| Nutzer mit Kurseinschreibungen ignorieren | Schützt alle mit aktiver Einschreibung; bei Neuinstallationen aktiviert |
| Keine Warnung verschicken sondern gleich löschen | Überspringt die Warnphase |
| Nicht berücksichtigte Rollen | Schützt Inhaber:innen der gewählten Systemrollen |
Site-Administrator:innen und das Gastkonto sind immer geschützt und lassen sich nicht wegkonfigurieren.
Grenzen
- Die Löschung ist endgültig. Es gibt kein Undo und keine Wiederherstellung.
- Inaktivität wird nur über Login-Daten gemessen, nicht über Lernfortschritt. Fortschrittsbasierte Inaktivität, ein Trockenlauf und Fristen je Organisation sind geplant und nicht im aktuellen Release enthalten.
- Ist LernHive-Zertifizierung installiert, bleiben Konten mit gültiger Zertifizierung oder offenem Rezertifizierungsfenster erhalten, sowohl vor der Warnung als auch vor der Löschung. Ohne dieses Plugin greift der Schutz nicht.
- Pro Lauf werden höchstens 400 Warn-E-Mails verschickt; der Rest folgt im nächsten Lauf.
- Ein Konto, an das keine Warn-E-Mail versendet werden kann, wird nicht gelöscht: E-Mail für die ganze Website abgeschaltet oder umgeleitet, fehlende, ungültige oder unzustellbare Adresse oder gesperrtes Konto. Das Log nennt die Nutzer-ID, und die Warnung wird in jedem Lauf erneut versucht.
- Es gibt keinen Kandidaten-Report. Das Log des geplanten Tasks ist die einzige Stelle, an der ein Lauf nachvollzogen werden kann.
Fehlerbehebung
| Symptom | Prüfen | Lösung |
|---|---|---|
| Es wird nie jemand gelöscht | Sind geplanter Task und Block aktiviert, und wurden die Warnungen versendet? | Nutzerbereinigung unter Geplante Tasks und den Block unter Übersicht aktivieren; im Task-Log nach „not warning user“ oder „warning mail … failed“ suchen |
| Es wird ohne Warn-E-Mail gelöscht | Ist Keine Warnung verschicken sondern gleich löschen gesetzt? | Option deaktivieren; ab dem nächsten Lauf gilt wieder die Warnphase |
| Warn-Mails kommen an, es wird aber nicht gelöscht | Sind seit der Mail Tage zum Löschen vergangen? | Gelöscht wird im ersten Lauf nach Fristablauf, nicht exakt am Stichtag |
| Zu viele Konten sind betroffen | Sind Nicht berücksichtigte Rollen und der Einschreibungsschutz gesetzt? | Rollen ergänzen, Inaktivitätsfrist erhöhen |
| Jemand wurde trotz Login gelöscht | Lag der Login vor dem Lauf, der gelöscht hat? | Jeder Lauf entfernt zuerst die Markierungen aller Zurückgekehrten und löscht erst danach — ein Login vor dem Lauf genügt. Ein Login nach dem löschenden Lauf hilft nicht mehr |
Screenshots
Noch keine Screenshots; für dieses Plugin gibt es keinen Aufnahmeplan.