JunkTick V. 1.13 I. Vorwort Da ich selbst einige Filenetze habe und weitergebe, ging mir immer wieder der Mangel an Programmen auf die Nerven, die mit TIC-Files etc. umgehen k”nnen. TICK selbst funktioniert zwar recht gut, ist aber sehr langsam und kann nicht all zu viel. Naja, nach all diesem Žrger habe ich mich eben mal hingesetzt und selbst was geschrieben (ach ja, ein weiterer Grund war natrlich, daá ich selbst unter OS/2 arbeite und es damals keinen TICK fr OS/2 gab -seufz-) II. Features - DOS- und OS/2 Version verfgbar - Schneller als TICK - Funktionierendes (!) Dupe-Checking und Replacing - PassThru-Fileareas m”glich - Haufenweise zus„tzliche Optionen zum Verschicken einzelner Files etc. - Packt TICKECHO- und TICKPACK-Archive aus - Verschickt und akzeptiert TOC-Archive; Idee „hnlich wie bei TICKPACK, die Archive werden aber direkt beim Ticken erzeugt und mssen beim Empf„nger auch nicht erst ausgepackt werden, sondern JunkTick kann direkt aus diesen Archiven lesen - Fileareas k”nnen in Gruppen eingeteilt werden, User haben nur Zugriff auf bestimmte Gruppen - Kompletter Ersatz fr TICK, HATCH, RFD und RAID - Voll konfigurierbare Announcements - AutoAdd-Funktion fr neue Areas... - voll 4D-f„hig (und etwas Domain-Support) - mehr f„llt mir jetzt nicht ein, lies einfach den Rest der Doku :-) III. Config-File JunkTick liest seine Konfiguration aus dem File JUNKTICK.CFG, das im selben Verzeichnis wie JUNKTICK.EXE stehen muá. Hier eine Aufz„hlung der einzelnen Konfigurationsworte, ansonsten siehe das kommentierte Config- File. NoTouch Normalerweise werden alle Files, wenn sie in die entsprechende Filearea gemovt werden, mit dem aktuellen Datum markiert, damit der New-Files-Scan der Mailbox sie auch findet. Wenn dies nicht gewnscht wird, kann das mit NoTouch abgestellt werden. Sysop Name des Sysops (als Absender der Announcements). Blanks MšSSEN durch Underscores ersetzt werden! Beispiel: Sysop Kalle_Braun Address Deine Hauptadresse. Ist insbesondere wichtig, um zu wissen, in welcher FIDO-Zone du lebst (wegen INTL-Lines und solchem Kram). Beispiel: Address 2:241/5302 DupeDir Das Directory, in dem die Dupefiles angelegt werden. Nach M”glichkeit sollte nichts anderes in diesem Directory stehen. Beispiel: DupeDir I:\Bbs\Tick\Dupes\ DupeSize Anzahl der Files, die pro Area im Dupefile gehalten werden. Jede Dupe- Signatur belegt 8 Bytes. Beispiel: DupeSize 1000 KillOnError Normalerweise werden ankommende Files, die aus irgendwelchen Grnden nicht getickt werden k”nnen, im Inbound liegen gelassen; die entsprechenden TIC- Files werden auf .BAD umbenannt. Das kann die Platte schnell anfllen, daher kann mit diesem Befehl bestimmt werden, nach welchen Fehlern die entsprechenden Files einfach gel”scht werden sollen. Folgende Kategorien gibt es: UnknownSystem l”scht Files, die von unbekannten Systemen ankommen WrongPassword l”scht Files, die nicht das richtige Password im TIC-File stehen haben UnknownArea l”scht Files, die in unbekannten Areas gehatcht wurden. Kann nicht auftreten, wenn NEWAREAS (s.u.) verwendet wird InactiveUser l”scht Files, die jemand in einer Area schickt, fr die er nicht eingetragen ist RcvOnlyUser l”scht Files, die jemand in einer Area schickt, in der er nur fr Empfang eingetragen ist BadCRC l”scht Files, deren CRC nicht mit der im TIC-File angegebenen bereinstimmt DupeFile l”scht Files, die doppelt angekommen sind NoPassThru l”scht Files, die in einer Area ankommen, die als PassThru markiert ist, ohne das ein PassThru-Direc- tory angegeben wurde DiskFull l”scht Files, die nicht in das Zielverzeichnis ko- piert werden konnten, da die Platte voll war NoData l”scht TIC-Files, deren zugeh”riges Datenfile nicht vorhanden ist Beispiel: KillOnError DupeFile BadCRC RaidAlias Normalerweise bestellen Downlinks neue Areas mit einer Netmail an JUNKTICK. Damit all diejenigen, die bisher an RAID oder so geschrieben haben, sich nicht umgew”hnen mssen, k”nnen bis zu 15 weitere Namen definiert werden, die JunkTick akzeptiert. Beispiel: RaidAlias Raid Muell Depp AfterAnnounce Unter bestimmten Umst„nden produziert JunkTick Mail, die m”glichst sofort nach dem Aufruf von JunkTick verarbeitet werden sollte. Damit aber der Tosser nicht auch laufen muss, wenn gar keine Mail produziert wurde, kehrt JunkTick mit bestimmten Errorlevels zurck, falls etwas getosst werden soll. Dabei hat der Announce-Errorlevel Vorrang vor dem Request-Errorlevel (siehe unten). Beispiel: AfterAnnounce 5 AfterRequest JunkTick kehrt mit diesem Errorlevel zurck, wenn An- und/oder Abbestel- lungen von Downlinks bearbeitet wurden. In diesem Falle braucht nur Netmail verarbeitet zu werden, keine Echomail. Beispiel: AfterRequest 6 Inbound Inbound-Directory, in dem reingekommene Files zu finden sind. Beispiel: Inbound I:\Bbs\PInbound\ PacketDir Manche Echo-Tosser sind wohl (hat man mir gesagt :-)) in der Lage, aus bestimmten Directories automatisch ohne Security-Check zu tossen. Dies l”st eines der gr”áten Probleme der bei JunkTick realisiert Announcing Methode (mehr siehe unten). Wenn PacketDir angegeben wird, wird das PKT-File in diesem Directory angelegt, sonst in dem bei Inbound (siehe oben) angegebenen Directory. Beispiel: PacketDir I:\Bbs\TossDir\ MailerBase Fr Binkley-Systeme: Outbound-Directory fr deine Zone. JunkTick geht davon aus, daá die Outbounds fr andere Zonen genauso heissen (plus .zone). Falls mehrere Domains verwendet werden, so k”nnen bis zu 20 zonenspezifische Directories angegeben werden. Beispiel: MailerBase I:\Bbs\Outbound MailerBase I:\Bbs\TurboNet 200 MailerBase I:\Bbs\Broesel 210 Logfile Was wohl? Beispiel: LogFile I:\Bbs\Junktick.Log HoldDir Directory, in dem rausgehende TIC- und TOC-Files angelegt werden. Beispiel: HoldDir I:\Bbs\Tick\Hold\ MaxArchiveSize Um sehr groáe TOC-Archive zu vermeiden, legt JunkTick blicherweise bei jedem Programmlauf ein neues Archiv an. Stattdessen kann mit dieser Op- tion aber auch eine Maximalgr”áe angegeben werden. Wenn diese Option nicht benutzt wird, wird weiterhin bei jedem Lauf ein neues Archiv an- gelegt. Beispiel: MaxArchiveSize Infinite h„ngt immer weiter an MaxArchiveSize 1MB \ erzeugt ein neues Archiv, MaxArchiveSize 1024kB > wenn das aktuelle Archiv MaxArchiveSize 1048576 / gr”áer als 1MB wird. PassThru Wenn diese Option angegeben wird, wird u.a. auch die PassThru-Funktion aktiviert. Bei jedem Start von JunkTick mit der TICK oder TOCK Option wird das PassThru-Directory nach Files durchsucht, die bereits verschickt sind, und l”scht sie. Beispiel: PassThru I:\Bbs\Tick\PassThru\ NewAreas Wenn diese Option angegeben wird, legt JunkTick unbekannte Areas neu an. Die Filearea bekommt als Directory die angebene Basis und den Areanamen. Beispiel: NewAreas J:\Filearea\ NetMail NetMail-Directory. Hier werden Mails an JunkTick gesucht und die Informations- Mail fr den Sysop abgelegt. Wenn MAILERBASE (s.o.) nicht definiert ist (bei FrontDoor-Systemen z.B.) werden auch die Fileattaches hier abgelegt. Beispiel: NetMail I:\Bbs\Netmail\ AnnHeader Textdatei, die den Anfang jeder Announce-Mail enth„lt. In diesem Text drfen die folgenden Platzhalter auftauchen: %wA - Aka, unter der die entsprechende Filearea l„uft. Wenn eine Feldbreite angegeben wird (also z.B. %12A), wird der Text auf diese Breite mit Leerzeichen gefllt (fr formatierte Textausgabe...) %DY - Jahr (4-stellig) %Dy - Jahr (2-stellig) %DM - Monat (numerisch) %DN - Monatsname 3-stellig (englisch) %Dn - Monatsname 3-stellig (deutsch) %DD - Tag (numerisch) %DE - Volles Datum (englisch: MM-DD-YY) %D - Volles Datum (deutsch: DD.MM.YY) %TH - Stunde (24-Stunden Uhr) %Th - Stunde (12-Stunden Uhr) %TM - Minuten %TA - AM/PM %Ta - am/pm %TE - Uhrzeit (englisch: HH:MMAM/PM) %Te - Uhrzeit (englisch: HH:MMam/pm) %T - Uhrzeit (deutsch: HH:MM) Beispiel: AnnHeader I:\Bbs\Utils\AnnHeade.Txt AnnText Textdatei, die den Eintrag fr jede Datei in der Announce-Mail enth„lt. In diesem Text drfen die folgenden Platzhalter auftauchen: %wFA - TIC-Area des Files %wFN - Name des Files %wFS - Gr”áe des Files in Bytes %wFO - Origin des Files %FD - Description des Files Auch hier kann fr die Ausgabe eine Breite vorgegeben werden. Ist der tats„chliche Text breiter, wird abgeschnitten, sonst wird mit Leerzeichen aufgefllt. Beispiel: AnnText I:\Bbs\Utils\AnnText.Txt AnnFooter Textdatei, mit der jede Announce-Mail beendet wird. Keine Platzhalter sind erlaubt. Beispiel: AnnFooter I:\Bbs\Utils\AnnFoote.Txt AnnCount Gibt an, wieviele Files max. pro Mail angekndigt werden. Beispiel: AnnCount 20 AnnSubj Betreffzeile der Announce-Mail. Kann %G als Platzhalter fr den Namen der File-Gruppe enthalten. Beispiel: AnnSubj Schon_wieder_neue_Files AnnPart Wenn mehr als eine Announce-Mail bei einem Durchgang von JunkTick erzeugt wird, wird an die Betreffzeile der mit AnnPart definierte Text angeh„ngt. Das erste %d repr„sentiert die aktuelle Nummer, das zweite %d die Gesamtzahl der Mails. Beispiel: AnnPart (Teil_%d_von_%d) HelpFile Wenn ein User in einer Mail an JunkTick %HELP schreibt, bekommt er dieses File zurckgeschickt. Es sollte also eine Beschreibung der Bestellm”glich- keiten enthalten. Beispiel: HelpFile I:\Bbs\JunkTick.Hlp Origin Bis zu 20 Origins k”nnen definiert werden, JunkTick w„hlt dann fr die Announce-Mails zuf„llig eins aus. Beispiel: Origin JunkTick:_It's_crap_and_we_love_it_(c)_1991_MTV User Fr jedes angeschlossene System (und fr jeden Uplink) muá ein User-Eintrag definiert werden. Dieser sieht wie folgt aus: User UserName UserPasswort UserAdresse UserFlags UserGroups UserName ist der Name des Users (wer h„tte es gedacht...). Auch hier mssen Blanks wieder durch Underscores ersetzt werden. UserPasswort ist das TICK- und RAID-Passwort des Users. UserAdresse ist die volle 4D-Adresse des Users (.0 kann natrlich weggelassen werden...) UserFlags sind: -H Files werden als Hold markiert -C Files werden als Crash markiert -D Files werden als Direct markiert wenn weder -C, -D noch -H vorkommt, werden die Files normal geroutet -I User ist inaktiv, d.h. er bekommt keine Files, obwohl er fr Areas eingetragen ist. -Vaddr Files fr den User werden an Adresse ADDR geschickt. Praktisch z.B. bei Virnet-Nodes... -Fflags Default-Flags fr Areas, die der User per RAID-Funktion bestellt. Werden keine Defaults angegeben, wird >P ver- wendet, falls auch die Area keine Defaults hat. (Flag- syntax siehe unten bei den Areas) Zum Schluá werden alle Gruppen aufgelistet, auf die der User Zugriff hat. Beispiel: User Otto_Maier SPIEL 2:4711/0815 -H DVNet WinNet DDS Group Mit einem GROUP-Statement beginnt die Definition der Areas. Ab hier drfen nur die Statements GROUP und AREA vorkommen. Alle AREA-Statements bis zum n„chsten GROUP-Statement geh”ren zur angegebenen Gruppe. Beispiel: Group WinNet Area Das AREA-Statement definiert die eigentlichen Areas. Es hat den folgenden Aufbau: Area AreaTag AreaPath AreaDescription AreaFlags AreaLinks AreaTag ist der Name, unter dem die Area gefhrt wird. AreaPath ist der Pfad, in den alle Files aus dieser Area getosst werden oder -P, wenn die Area passthru sein soll. AreaDescription ist eine Beschreibung der Area (fr RAID). Blanks mssen durch Underscores ersetzt werden. AreaFlags k”nnen sein: -Dnumber - Files in dieser Area, die „lter als NUMBER Tage sind, werden von JUNKTICK KILL gel”scht -$Filename - Aktiviert das DupeChecking fr diese Area. Die Signa- turen werden in dem entsprechenden File abgelegt. Jedes Dupe-File darf nur fr EINE Area verwendet werden. -C - Aktiviert CRC-Checking fr diese Area -Aarea - Aktiviert Announcing fr diese Area. Announce-Mails werden in Echoarea AREA geschrieben. -Aarea kann bis zu 20 mal pro Area fr Announcements in mehreren Areas angegeben werden. -Fflags - Defaultflags fr jeden User, der diese Area bestellt. Flagsyntax wie unten. Flags, die bei einer Area ange- geben werden, haben Vorrang vor Userflags. So ist es z.B. m”glich, Usern grunds„tzlich gepackte Files zu schicken, die NodeDiffs aber einzeln o.„. -Paddr - Verwendet ADDR anstelle der Mainadresse als Absender in TIC-Files und Announcements. AreaLinks ist eine Liste aller Leute, die Files in dieser Area versenden oder empfangen. Jede Adresse kann mit folgenden Steuerzeichen markiert sein: < - Von diesem System kann nur empfangen werden, es wird nichts gesendet. > - An dieses System wird nur gesendet, empfangene Files werden ignoriert. D - Der User bekommt keine TIC-Files, sondern einen Netmail-Attach mit der Beschreibung des Files. S - Der User bekommt kurze TICs (ohne PATH und SEEN-BY Lines) N - Der User bekommt nur das File, keine Beschreibung und kein TIC-File (ntzlich fr NODEDIFFs etc.) P - Alle Files an den User werden im TOC-Format gepackt. Beispiel: Area XYZ J:\Files\ABC\ No_Desc -$XYZ -C P2:08/15 IV. Aufruf von JunkTick JunkTick kann mit einem Haufen von Parametern aufgerufen werden: HELP gibt eine kurze Beschreibung der Parameter aus ADD [flags]addr area_or_group+ tr„gt User ADDR mit den angebenen Flags (<>DSNP) fr alle ange- gebenen Areas ein. Wenn der Name einer Gruppe angegeben wird, wird der User fr alle Areas der Gruppe eingetragen. DESCRIBE area description Tr„gt DESCRIPTION als Beschreibung fr Area AREA ein HATCH area [/R:replace] file Hatcht das angebene File in der entsprechenden Area. Mit /R kann angegeben werden, welches File ersetzt werden soll. JunkTick sucht sich die Beschreibung des Files selbst aus FILES.BBS SEND addr file Sendet das angegebene File an die angegebene Adresse. HATCH sendet ein File an alle Nodes in der Export-Liste der entsprechenden Area, SEND sendet ein File an nur ein System (aber mit TIC-File!) RESCAN area|ALL addr [date] Rescant Areas fr die angegebene Adresse. Wenn ALL angegeben wird, werden alle Areas rescannt, fr die der User eingetragen ist, sonst nur die angegebene Area. Wenn DATE angegeben wird, werden nur Files gesendet, die neuer als das entsprechende Datum sind. DATE muá im Format DD.MM.YY angegeben werden QUERY addr Gibt auf STDOUT eine Liste aller Areas aus, an die der entsprechende User angeschlossen ist LIST addr Gibt auf STDOUT eine Liste aller Areas aus, die der entsprechende User bestellen kann UNLINKED addr Gibt auf STDOUT eine Liste aller Areas aus, die der entsprechende User bestellen kann und nicht bestellt hat ANNOUNCE date area+|ALL Erzeugt Announcements fr alle Files, die in den angegebenen Areas seit DATE (Format: DD.MM.YY) angekommen sind. REMOVE addr area_or_group+ L”scht das angegebene System aus der Exportliste der angegebenen Areas oder Gruppen KILL L”scht Files in allen Areas gem„á des -D Parameters (s.oben) TICK Verarbeitet eingegangene TIC-Files TOCK Verarbeitet eingegangene TOC-Archive REQUEST Startet die RAID-Funktion UNPACK Packt TICKPACK- und TICKECHO-Archive aus SORT Sortiert die Areas im CFG-File alphabetisch innerhalb der Gruppen Die letzten sechs Kommandos k”nnen gemeinsam angegeben werden, JunkTick fhrt sie dann in der richtigen Reihenfolge aus (KILL vor allem anderen, UNPACK vor TICK etc.) V. Announcing Wenn eine Area das -A Flag enth„lt, werden alle Files, die in dieser Area ankommen, per Echomail angekndigt. Prinzipiell gibt es mehrere M”glich- keiten, dies zu realisieren: Die entsprechende Mail kann direkt in die Messagebase geschrieben werden, es kann ein ASCII-File erzeugt werden, das dann importiert wird oder es wird ein Echopacket erzeugt. Die erste M”g- lichkeit ist sehr systemabh„ngig, da fast jedes Mailboxsystem seine Mails auf eine andere Art verwaltet. Fr die zweite M”glichkeit wird das ent- sprechende Utility ben”tigt, das nicht jeder hat. Daher habe ich mich fr die dritte M”glichkeit entschieden. Hierbei ist allerdings auch einiges zu beachten... JunkTick erzeugt ein Echopacket dessen Absender UND Empf„nger die unter MainAddr eingetragene Adresse ist. Bei Verwendung eines Echotossers mit Security-Features fhrt dies zu Problemen, da die eigene Adresse normaler- weise nicht fr die entsprechende Area aktiv ist. Daher muá zum Tossen der Announce-Mail die Security abgeschaltet werden. Dabei sollte man aber aufpassen, daá so nicht irgendwelche andere Badmail, die noch im System rumliegt, mitgetosst wird. Bei mir l„uft es (mit SQUISH) so: SQUISH IN OUT SQUASH LINK % Sichergestellen, daá alles getosst % ist JUNKTICK UNPACK TICK TOCK REQUEST % JunkTick erzeugt Packet DEL I:\BBS\BADMAIL\BADORG.* % Badmail renamen, so daá SQUISH sie REN I:\BBS\BADMAIL\BAD.* BADORG.* % nicht mehr findet SQUISH IN OUT SQUASH LINK -T % Tossen ohne Security DEL I:\BBS\BADMAIL\BAD.* % und die richtige Badmail wieder REN I:\BBS\BADMAIL\BADORG.* BAD.* % renamen. VI. RAID Funktion Die An- und Abbestellfunktion von JunkTick ist sehr einfach und „hnelt der von JunkFix. Ein User sendet eine Mail an JUNKTICK und tr„gt als Subject sein Passwort ein. Im Text k”nnen dann folgende Kommandos stehen: -AREA bestellt die entsprechende Area ab. +AREA \ bestellt die entsprechende Area an, falls der User dazu be- AREA / rechtigt ist. %-ALL klemmt den User von allen Areas ab. %HELP sendet den Hilfetext (siehe auch HelpFile) %LIST sendet eine Liste aller Areas, die der User bestellen kann. %QUERY sendet eine Liste aller Areas, an die der User angeschlossen ist. %UNLINKED sendet eine Liste aller Areas, die der User bestellen kann, aber bisher nicht bestellt hat. Das war's schon. VII. UNTOCK Um die Vorteile des TOC-Formats auch bei Downlinks zu nutzen, die selbst nicht mit JunkTick arbeiten, gibt es UNTOCK. Dieses Programm entpackt TOC-Archive und erzeugt normale Files und TIC-Files, die dann mit TICK, BMHITCH o.„. weiterverarbeitet werden k”nnen. Die Benutzung ist sehr einfach: Einfach in das Directory mit den einge- gangenen TOC-Archiven wechseln und UNTOCK starten. Das war's. VIII. Diverses JunkTick ist FreeWare. Das heiát, ich habe das Copyright und die Sourcen, ansonsten kann das Programm frei weiterverteilt werden. Ich bernehme KEINERLEI Verantwortung fr eventuelle Sch„den an Datenbest„nden etc. die durch die Verwendung von JunkTick etc. entstehen. Wenn irgendwas schiefgeht, habt ihr Pech gehabt. Ich habe das Programm hier getestet und verwende die OS/2 Version auch selbst, insofern ist eine gewisse Funktionstchtigkeit sichergestellt. Ein Anspruch auf Fehlerbeseitigung o.„. besteht nicht, ich werde mich aber bemhen, auf Bugreports zu reagieren... Kalle Braun 2:2402/305@FIDONET