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

  1. Download der Software

  2. Entpacken aller Dateien in dasselbe Verzeichnis

  3. Ggf. Überprüfung der PGP-Signatur und Lektüre von readme.txt und changes.txt

  4. Zum Betrieb erforderlich sind die Dateien
    • artchk.pl
    • domains
    • (eine Kopie von) sample.ini
    • (eine Kopie von) sample.rc
  5. Achtung! - Bei den Konfigurationsdateien ggf. auf richtigen Zeilenumbruch achten; im Ggs. zu Unixen verlangt DOS/Windows dort CR+LF.

Erste Schritte

  1. Datei sample.ini in artchk.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 mittels reader_user und reader_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 Form news.gro.up n, also der Name einer zu checkenden Newsgroup, gefolgt von einem (!) Leerzeichen sowie einem n.

    checkgroups:
    de.test n
    de.alt.test n
    
  2. Datei sample.rc in artchk.pl.rc umbenennen und diese öffnen.

    Dort den Abschnitt [head] bearbeiten und den Absender des Bots als From:-Header eintragen. Alle sonstigen Einträge außer X-No-Archive: yes entfernen.

  3. 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.

  1. 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 Eintrag

    reader = testserver.provider.de,1190
    

    Soweit der Server Benutzername und Passwort verlangt, sind diese im folgenden mittels reader_user und reader_pass anzugeben.

    reader_user = checkbot
    reader_pass = Twe23Rui6we
    

    Fehlt dieser Eintrag, findet keine Authentifizierung statt.

  2. Getrennten Server zum Posten einrichten:

    Das Vorgehen ist wie oben, nur ist statt reader jeweils poster_server bzw. poster_user und poster_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.

  3. Ä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 und trigger_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.

  4. Ä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 sind rcfile oder killfile.

    rcfile = standard
    killfile = standard
    
  5. 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üsselwort checkgroups: nicht mehr zulässig.

    Danach folgt in jeder Zeile der Name einer zu checkenden Newsgroup, ein (!) Leerzeichen sowie y oder n, 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 nach checkgroups: 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.

  1. Auf jeden Fall anzupassen ist der Abschnitt [head], der in den Header des Postings kopiert wird. Zu bearbeiten ist der From:-Header; Sender:, Reply-To: und Path: 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ürfen Newsgroups:, Subject:, Message-ID:, References: oder X-Artchk-Version:, da diese Einträge vom Programm selbst vorgenommen werden.

  2. 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].

  3. 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.

  4. 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.