Dieser Text befindet sich inhaltlich auf dem Stand des Jahres 2002 und wird nicht mehr gepflegt oder aktualisiert. Er ist in jeder Hinsicht veraltet und steht nur noch zu Dokumentationszwecken online.
Der Checkbot wird seit 10/2001 nicht mehr weiterentwickelt; das
abschließende Release erfolgte am 09.01.2005.
Ein Produktiv-Einsatz kann nicht empfohlen werden.
Download und Installation
-
Download der Software
-
Entpacken aller Dateien in dasselbe Verzeichnis
-
Ggf. Überprüfung der PGP-Signatur und Lektüre von
readme.txt
undchanges.txt
- Zum Betrieb erforderlich sind die Dateien
artchk.pl
domains
- (eine Kopie von)
sample.ini
- (eine Kopie von)
sample.rc
- Achtung! - Bei den Konfigurationsdateien ggf. auf richtigen
Zeilenumbruch achten; im Ggs. zu Unixen verlangt DOS/Windows dort
CR+LF
.
Erste Schritte
-
Datei
sample.ini
inartchk.pl.ini
umbenennen und diese öffnen.In der ersten Zeile
reader = (servername)
eintragen, ggf. gefolgt von einem Komma und dem anzusprechenden Port. Soweit der Server Benutzername und Passwort verlangt, sind diese im folgenden mittelsreader_user
undreader_pass
anzugeben.reader = testserver.provider.de reader_user = checkbot reader_pass = Twe23Rui6we
Alles bis zur Zeile mit
checkgroups:
löschen. Darunter dann die Newsgroups eintragen, in denen der Checkbot laufen soll, und zwar in der Formnews.gro.up n
, also der Name einer zu checkenden Newsgroup, gefolgt von einem (!) Leerzeichen sowie einemn
.checkgroups: de.test n de.alt.test n
-
Datei
sample.rc
inartchk.pl.rc
umbenennen und diese öffnen.Dort den Abschnitt
[head]
bearbeiten und den Absender des Bots alsFrom:
-Header eintragen. Alle sonstigen Einträge außerX-No-Archive: yes
entfernen. -
Das Programm mit
perl artchk.pl -v
starten.
Konfiguration
Anpassung der .ini
-Datei
Die einzelnen Parameter stehen jeweils in einer eigenen Zeile. Der Aufbau ist folgender:
Parametername = Parameterwert
[...weitere Name-Wert-Paare...]
checkgroups:
news.gruppe y/n
[...weitere Gruppen...]
Parametername und -wert werden durch ein =
getrennt. Zwischen den
Parametern dürfen Kommentarzeilen stehen; diese dürfen aber kein =
enthalten! Auf die Parameter muss das Schlüsselwort checkgroups:
(mit
dem Doppelpunkt) auf einer eigenen Zeile folgen.
Erforderlich sind im folgenden nur die Schritte 1 und 5. Vergleiche auch die Erläuterungen bei der Einführung in die Funktionsweise des Bots.
-
Newsserver einrichten:
Einzutragen ist auf jeden Fall
reader = (servername)
, ggf. gefolgt von einem Komma und dem anzusprechenden Port. Dies gilt auch dann, wenn der Checkbot im Feeding-Mode betrieben wird; dann wird dieser Server zum Posten verwendet, soweit kein Postingserver angegeben ist.Wenn der zu verwendende Newsserver bspw.
testserver.provider.de
heisst und auf Port 1190 anzusprechen ist, lautet der Eintragreader = testserver.provider.de,1190
Soweit der Server Benutzername und Passwort verlangt, sind diese im folgenden mittels
reader_user
undreader_pass
anzugeben.reader_user = checkbot reader_pass = Twe23Rui6we
Fehlt dieser Eintrag, findet keine Authentifizierung statt.
-
Getrennten Server zum Posten einrichten:
Das Vorgehen ist wie oben, nur ist statt
reader
jeweilsposter_server
bzw.poster_user
undposter_pass
zu verwenden.post_server = news.woanders.de poster_user = jonathan poster_pass = holugui
Fehlen diese Einträge ganz, wird auf demselben Server gelesen und gepostet.
-
Änderung der Triggerbegriffe:
Auf welchen Begriff der Checkbot reagiert bzw. welche Begriffe ihn im Auto-Modus veranlassen, ein Posting nicht zu prüfen, ist einstellbar. Von den Vorgaben sollte aber nicht ohne Grund abgewichen werden, um ein einheitliches Verhalten der parallel laufenden Bots zu erreichen. Modifiziert werden können
trigger_check
undtrigger_ignore
, wobei jeweils ein "Regulärer Ausdruck" (Regular Expression) Verwendung findet.trigger_check = \bteste dieses posting\b trigger_ignore = (ignore)|(no[ ]*repl(y|(ies)))
Fehlen diese Einträge, wird auf die Voreinstellungen zurückgegriffen.
-
Änderung der Dateinamen:
Die Dateinamen für die Textbaustein-Datei (
.rc
) und das Killfile (.kill
) lassen sich getrennt und unabhängig von der.ini
- Datei einstellen. Das macht Sinn, wenn man für verschiedene Newsserver verschiedene.ini
-Dateien anlegen, aber nur einheitliche Textbausteine und ein einheitliches Killfile verwenden möchte. Zu ändern sindrcfile
oderkillfile
.rcfile = standard killfile = standard
-
Einstellung der zu checkenden Gruppen:
Die Parameter werden von der Liste der zu prüfenden Gruppen durch eine Zeile mit dem Schlüsselwort
checkgroups:
(mit dem Doppelpunkt) getrennt. Kommentare o.ä. sind nach dem Schlüsselwortcheckgroups:
nicht mehr zulässig.Danach folgt in jeder Zeile der Name einer zu checkenden Newsgroup, ein (!) Leerzeichen sowie
y
odern
, um den Autocheck-Modus für diese Gruppe ein- (y
) oder auszuschalten (n
). Optional kann ein (!) weiteres Leerzeichen und danach der aktuelle Stand des Artikelzählers für die betreffenden Gruppe ergänzt werden. Dieser wird vom Checkbot dann selbständig aktualisiert.checkgroups: de.test y de.alt.test y provider.test n local.test y
Im ganzen würden die genannten Beispiele dann folgendes Bild ergeben:
reader = testserver.provider.de,1190 reader_user = checkbot reader_pass = Twe23Rui6we post_server = news.woanders.de poster_user = jonathan poster_pass = holugui trigger_check = \bteste dieses posting\b trigger_ignore = (ignore)|(no[ ]*repl(y|(ies))) rcfile = standard killfile = standard checkgroups: de.test y de.alt.test y provider.test n local.test y
Die Reihenfolge der Einträge vor
checkgroups:
ist ebenso wie die Reihenfolge der Gruppen nachcheckgroups:
beliebig.
Anpassen der .rc-Datei
In dieser Datei sind die Textbausteine enthalten, derer sich der Checkbot bei der Generierung einer Antwort bedient, einschließlich der Headerzeilen. Sie lassen sich den eigenen Bedürfnissen anpassen.
Die einzelnen Textbausteine sind folgendermaßen aufgebaut:
[name]
;
Textbausteintext
;
Zu achten ist auf einen korrekten Zeilenumbruch im Textbausteintext.
-
Auf jeden Fall anzupassen ist der Abschnitt
[head]
, der in den Header des Postings kopiert wird. Zu bearbeiten ist derFrom:
-Header;Sender:
,Reply-To:
undPath:
müssen bearbeitet oder gelöscht werden. Weitere Header können unter Beachtung der einschlägigen RFCs beliebig ergänzt werden; nicht eingetragen werden dürfenNewsgroups:
,Subject:
,Message-ID:
,References:
oderX-Artchk-Version:
, da diese Einträge vom Programm selbst vorgenommen werden. -
Das Löschen eines Textbausteins führt dazu, dass die entsprechenden Checkroutinen nicht mehr durchgeführt werden (d.h., genau genommen: sie werden durchgeführt, ein eventuell positives Ergebnis aber vor dem Posten der Antwort verworfen). Nicht gelöscht werden dürfen die Abschnitte
[head]
,[header]
,[header-auto]
,[footer]
,[intro]
,[allok]
und[nr]
. -
Es können seit Build 00061301 BETA auch spezielle newsreaderspezifische Textbausteine definiert werden. Vgl. dazu die Erläuterungen bei der Einführung in die Funktionsweise des Bots.
-
Es können seit Build 00080901 BETA auch Variablen verwendet werden. Diese werden dann automatisch mit dem entsprechenden Wert ersetzt. Vgl. dazu die Erläuterungen bei der Einführung in die Funktionsweise des Bots.
Anpassung der .kill-Datei
In dieser Datei finden sich Einträge, um bestimmte Postings von der automatischen Prüfung auszunehmen. Vgl. dazu die Erläuterungen bei der Einführung in die Funktionsweise des Bots.
Feeding-Modus
Um den Checkbot direkt aus einem INN heraus zu befeeden, ist
zunächst in /etc/news/newsfeeds
ein entsprechender Feed zu
konfigurieren, wie bspw. durch einen Eintrag der Form
checkbot!:!*,*.test:Tc,Wf:/path/to/artchk.pl -p/path/to --log --feedmode
Ansonsten sind in der .ini
-Datei wie gewohnt ein Server für das Posten
der Followups des Checkbots sowie die zu prüfenden Gruppen
einzustellen; weitere Änderungen sind eigentlich nicht erforderlich.
Bedenken Sie bitte, dass der Checkbot bislang nur mit einem INN mit Traditional Spool umgehen kann. Denken Sie auch daran, dass die Permissions für das Checkbot-Script und alle Konfigurationsdateien so gesetzt sind, dass sie aus dem INN heraus gestartet werden können!
Dieser Text befindet sich inhaltlich auf dem Stand des Jahres 2002 und wird nicht mehr gepflegt oder aktualisiert. Er ist in jeder Hinsicht veraltet und steht nur noch zu Dokumentationszwecken online.