Benutzer:Euku/was genau macht der VM-erledigt-Bot?
Der Xqbot hat auf WP:VM zwei Aufgaben. Einerseits teilt er dort gemeldeten Benutzern mit, dass sie von jemandem gemeldet wurden und andererseits markiert er Abschnitte bereits gesperrter Nutzer d.h. erledigte Abschnitte mit "(erl.)".
Der Bot wird aktiv, sobald auf der VM-Seite nicht von einem Bot geschrieben wird oder eine Benutzersperre oder Sperrverlängerung ins Sperrlogbuch geschrieben wurde. Diese Information erhält er über die Implementierung von EventStreams.
- Er überprüft, ob es im Sperrlogbuch neue Einträge seit der letzten Überprüfung gibt.
- Wenn es sie gibt, dann wird geprüft, ob es auf WP:VM Überschriften gibt, in denen einer der gerade gesperrten Benutzer auftaucht. Dabei werden gängige Formate akzeptiert z.B. von Benutzerskripten oder auch Huggle:
== [[Benutzer:123.45.67.89]] ==
,== 123.45.67.89 ==
, …- Ist der passende Abschnitt gefunden und dieser endet nicht mit
(erl.)
(erledigt)
(gesperrt)
oder(in Bearbeitung)
, wird am Ende der Diskussion, ein Vermerk gesetzt und der Überschrift ein(erl.)
angefügt. Für den Vermerk nutzt er diese Vorlage. Das Markieren ist nicht auf einen gesperrten Benutzer und auch nicht auf einen Abschnitt begrenzt, d.h. es kann passieren, dass 7 betroffene Abschnitte von 4 unterschiedlichen Benutzern, die gesperrt wurden, auf einmal als "erledigt" markiert werden.
- Ist der passende Abschnitt gefunden und dieser endet nicht mit
- Er überprüft, die neuen Meldungen auf VM und benachrichtigt den Gemeldeten, wenn:
- Der Gemeldete angemeldet ist und mindestens 25 Bearbeitungen hat und
- nicht in der Opt-out-Liste für Nachrichtenempfänger steht und
- der Melder nicht in der Opt-out-Liste für VM-Steller steht und
- die Überschrift wie oben erwähnt formatiert wurde und der Melder eine Standardsignatur mit Link auf Benutzer(diskussions)seite oder seine Beiträge verwendet.
FAQ
Warum klappt die Markierung gesperrter Benutzer manchmal nicht?
Dies kann viele Gründe haben:
- Die Meldung auf VM erfolgte nach der Sperre des Admins
- Damit kann der Bot umgehen, denn der Bot schaut bei jedem Event 10 Logbucheinträge zurück.
- Abschnitt wird nicht erkannt
- Der Link des gemeldeten enthält ungültige Zeichen oder es werden mehrere in einer Überschrift gemeldet.
- Der Bot bekommt einen Bearbeitungskonflikt
- Das ist zwar bei der schnellen Bearbeitungszeit eher selten, aber es kann passieren. Zwischen Quelltext aufrufen und Speichern liegen 1-3 Sekunden. Liegt ein BK vor, versucht er es beim nächsten Event nochmal.
- Der Bot wird keine Seiten speichern, weil der Datenbank-Lag zu groß ist
- Dies dient der Schonung der Server und ist allen Pywikibots gleich. Als Mensch merkt man davon nur, dass der Bot anscheinend nichts mehr macht.
- Was anderes
- "Wikipedia hat ein Problem", der Bot hat ein Problem, keine Internetverbindung für den Botrechner, …
Ich bekomme Bearbeitungskonflikte beim Schreiben der Begründung für die Sperre, geht das auch anders?
Dies sollte eigentlich nicht mehr vorkommen, da der Bot (nahezu) zeitgleich mit der Sperre schreibt. Der Hintergrund der schnellen Botreaktion ist, dass Admins sich nicht unnötig mit bereits erledigten Fällen beschäftigen müssen; das marblocked.js zeigt dies natürlich auch sehr schnell..