USERSTAT - (C) 1993-1998 by DF3VI/DG6SBU ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ USERSTAT 3.3 - 05.06.98 (C) 1998 Patrick Sesseler, DF3VI USERSTAT 2.1 - 24.01.96 (C) 1996 Patrick Sesseler, DF3VI USERSTAT 1.1 - 13.10.94 (C) 1993 Ralf Koenig, DG6SBU 1. Anmerkungen 1.1 Vorwort von DG6SBU 1.2 Vorwort von DF3VI zur V2.0 1.3 Bemerkungen zur V3.0 1.4 Neu bei V3.3 2. Installation 3. Syntax 3.1 Schalter 3.2 Funktionen 3.2.1 USERSTAT a 3.2.2 USERSTAT b 3.2.3 USERSTAT c [prefix] 3.2.4 USERSTAT u 3.2.5 USERSTAT m [plus-Monate] 3.2.6 USERSTAT o 3.2.7 USERSTAT x 4. Probleme bei langsamen Rechnern 1. Anmerkungen -------------- 1.1 Vorwort von DG6SBU ---------------------- USERSTAT ist ein kleines Utility zum Sichtbarmachen von Daten aus dem User- file 'users.bcm' einer BayCom-Mailbox. (Fuer SYSOPS einer BayCom-Mailbox!) Das Programm entstand, als wir, die Sysopgruppe von DB0RBS in Schwieber- dingen, wissen wollten, wieviele User ihr MYBBS auf unserer Mailbox haben. Im Anfangsstadium wurde versucht, alle lokal bekannten User 'per Hand' mittels dem 'U'-Befehl auszulesen und dann eine Liste zu erstellen. Schon bald aber wurde das zu muehsam. So wurde der Programmierer der BayBox-Soft- ware Flori, DL8MBT gefragt, ob es denn nicht moeglich sei, die Struktur der Userdaten in 'users.bcm' zu erfahren. Der Flori sagte ja und schickte mir kurz darauf die Spezifikation. Und ich hab losprogrammiert. So hat es angefangen. Nach einigen Schwierigkeiten (zumindest fuer mich, der ich noch nicht sehr viel Programmiererfahrung habe) mit der Umsetzung der Struktur von C in PASCAL (andere Stringbehandlung) entstand so die erste Programmversion und auch die erste User-Statistik auf DB0RBS. Wir waren zufrieden und ich habe ne Menge dazugelernt. Es war eigentlich nicht vor- gesehen, das Programm jemals zu veroeffentlichen, ich war der Meinung dass in den Boxen genug Programme durch die Gegend geschleusst werden und dass kein Bedarf an so einem Utility besteht. Aber man hat mich eines Besseren belehrt. Tatsaechlich sind jetzt (via Flori) schon mehrere Anfragen danach bei uns angekommen. Und da es mir jetzt zu muehsam wird, jedesmal aufs neue die Files einzuspielen, will ich es jetzt doch mal allgemein in die Rubrik BayBox einspielen. 1.2 Vorwort von DF3VI zur V2.0 ------------------------------ Die Version 2.0 entstand aus dem Sourcecode zur V1.1b, welches eine V1.1 war, in die einigen Aenderungen in der Struktur von USERS.BCM eingearbeitet wurden. Ralf, DG6SBU, hatte mir damals dankenswerterweise den Sourcecode ueberlassen, um mir die Moeglichkeit zu geben das Programm fortzuentwickeln. Damals hatte ich auch den Sourcecode zur Entwicklung des Programms OLDMYBBS benutzt; inzwischen sind beide Programme unter dem Dach von USERSTAT vereinigt. (Historie: Das Programm OLDMYBBS entstand nach einen Vorbild von ON4UAA fuer DieBox, wobei das DieBox-Programm jedoch gar nicht richtig funktionieren kann, weil dort fuer LastLogin und LastMyBBS ein und das selbe Feld in den Userdaten benutzt wird. Bei BCM gibt es zum Glueck genuegend Platz in den Userdaten, und so ergeben sich hier auch wirklich realitaetsnahe Ergebnisse.) Die zweite Neuigkeit der V2.0 war (neben etlicher Feinarbeit in Details) eine Statistik-Funktion zur Verteilung der MYBBS-Eintraege auf die einzelnen Boxen. Schliesslich wurde noch die Aufruf-Reihenfolge der Parameter dem bei der BCM ueblichen Sequenz etwas angepasst (eine der Feinarbeiten, was aber auch aufgrund des gewachsenen Funktionsumfangs noetig wurde). Neu in der V2.1 ist die Moeglichkeit, nach Usern mit HOLD-Status (FHOLD 1) und NOPURGE 1 zu suchen. Neu in der V2.2 ist die Moeglichkeit, bei Rufzeichenwechsel einer Mailbox ein Import-File zu erzeugen, das die MYBBS-Eintraege lokal anpasst. 1.3 Bemerkungen zur V3.0 ------------------------ Die nun vorliegende Version wurde neu in Turbo-C geschrieben. So ist es nun moeglich, auch recht einfach eine Version fuer LINUX zu erstellen. Die Funktionalitaet der Version bleibt auf dem umfangreichen Stand der V2.2; sie ist fuer Linux und DOS gleich. 1.4 Neu bei V3.3 ---------------- Einzige Neuerung ist das Hinzufgen neuer Parameter der BCM 1.40. Auerdem wurde das Suchen nach FHOLD und NOPURGE herausgenommen, da die BCM dies inzwischen selber kann. 2. Installation --------------- Das Programm muss in ein in der PATH-Umgebungsvariable enthaltenes Ver- zeichnis kopiert werden. Ausserdem is ein Konfigurationsfile USERSTAT.CFG noetig, das sich im BCM-Verzeichnis oder im gleichen Verzeichnis wie das Executable befinden muss. Es ist eine Text-Datei, die wie folgt aussieht: ------------------------------------------------------------------------------ # USERSTAT Konfigurationsfile # savepfad=c:\bcm lifetime=20 savename=rbs-news sysop=dl1sem # ------------------------------------------------------------------------------ Zur Bedeutung der Zeilen: 1. '#' am Zeilenanfang leitet einen Kommentar ein. Man kann sich also so viele Kommentare goennen, wie man fuer noetig haelt. Kommentare muessen aber immer in einer Zeile fuer sich stehen, sie duerfen nicht hinten an Befehle angefuegt werden! 2. savepfad= definiert das Verzeichnis, in das die Auswertungen ge- schrieben werden. Von dort aus kann man sie dann mittels 'import' in die Box importieren. 3. lifetime= Zeit, wie lange das File in der Box stehen soll. 4. savename= Rubrik, in der alle Auswertungen AUSSER Einzeldaten von Usern kommen. Es kann natuerlich auch hier das Board des Sysops angegeben werden. 5. sysop= Der Name sagts schon, hier sollte das Sysopcall stehen. Wenn man wirklich das Beduerfnis hat, die kompletten Daten eines Users ueber Funk auszulesen, dann landen die (nach dem Importieren) im eigenen Userboard. 3. Syntax --------- Beim Aufruf mit zu wenigen oder falschen Parametern bekommt der Benutzer folgende Information, die anschliessend erlaeutert wird: USERSTAT 3.1 02.12.1996 (C) 1996 DF3VI/DG6SBU Syntax: USERSTAT [-] Funktion: a : Anzeigen persoenliche Daten von b : Zaehlen der User von c : Verteilung aller Eintraege in USERS.BCM u : User mit UserFWD-Eintrag anzeigen m : User mit altem Eintrag o : Monatsuebersicht des MyBBS-Alters x : Mybbs-Wechsel von auf Schalter: ohne: Ausgabe der einzelnen Calls auf dem Bildschirm c : nur Zaehlen der Eintraege und Ausgabe der Summe auf dem Bildschirm. f : Ausgabe der Calls und der Summe in File .IMP zum importieren in BBS s : Ausgabe in File wird sortiert. Es koennen mehrere Schalter gleichzeitig angegeben werden, ohne Leerzeichen dazwischen. Jeder Aufruf ist gekennzeichnet durch einen Funktionsbuchstaben, der angibt welche Funktion das Programm ausfuehren soll. Es folgt optional eine Schalterangabe. Im Gegensatz zu frueheren Versionen ist die Bildschirmausgabe nun die Voreinstellung (germisch: default); ich war's einfach leid immer "-p" mit angeben zu muessen :-) "-p" entfaellt! Wer nur den Kurzueberblick haben will, um abschaetzen zu koennen wieviel Daten da moeglicherweise auf einen zukommen, sollte nun "-c" angeben! Je nach Funktion sind noch teilweise ein oder zwei Argumente notwendig. Eigentlich ist es von der Funktion her logisch was erwartet wird, aber es wird gleich noch mal im einzelnen erklaert, wie das Argument der Funktion auszusehen hat. 3.1 Schalter ------------ keiner: Es werden die vollen Ausgaben auf den Bildschirm bzw. bei Remote-Betrieb auf dem Funkkanal ausgegeben. Das kann unter Umstaenden ganz schoen viel sein... -c (count): Mit diesem Schalter laesst sich die Ausgabe bei Aufrufen weitgehendst unterdruecken. Es wird lediglich die Anzahl der Rufzeichen angegeben, die zum Ergebnis beitrugen. -f (file): Schreibt die Bildschirm-Ausgabe in eine Datei. Interessant ist hier das Zusammenwirken mit -c, so dass -cf das Ergebnis NUR in eine Datei schreibt, aber nicht aussendet (empfehlenswert, wenn eine Import-Datei gewuenscht ist). Die Datei enthaelt jeweils einen SEND-Befehl und das IMPDEL-Kommando zum selbstaetigen Loeschen nach einem Import. -s (sort): Die Ausgabe (egal ob auf Bildschirm oder in Datei) wird sortiert. Bei groesseren Datenmengen kann dies moeglicherweise recht lange dauern! Daher ist sortieren nur bei bis zu einigen hundert erwarteten Daten empfehlenswert. Die Reihenfolge, in der Schalter kombiniert werden, ist unerheblich; so ist z.B. "-cfs" gleichbedeutend mit "-scf" etc... Falsch waere aber "-c -s -f"! 3.2 Funktionen -------------- 3.2.1 USERSTAT a ----------------------- Diese Funktion zeigt wichtige (A)lter-Daten, die zu gespeichert sind. Sie hatte frueher keinen Parameter. Der Schalter -s ist hier nicht sinnvoll. -f speichert die Ausgabe in ".imp". 3.2.2 USERSTAT b ---------------------- Entspricht der Funktion des frueheren Parameters b und zaehlt alle User-Calls auf, deren MyBBS auf gesetzt ist. Dabei ist es egal, ob die Adresse mit hierarchischem Wurmfortsatz oder nicht in der USERS.BCM gespeichert ist. -f speichert die Ausgabe in ".imp". 3.2.3 USERSTAT c [prefix] ------------------------- Diese Funktion wurde gegenueber dem frueheren Parameter c stark erweitert: Sie zaehlt nicht nur die Anzahl der Stationen in USERS.BCM (nun: c -c), sondern erstellt auch eine Statistik ueber die MYBBS-Verteilung auf die einzelnen Mailboxen. Bei der Ausgabe werden angegeben: Mailbox-Call : klar :-) Set : Anzahl der selbstgesetzten (@)-MyBBSes Read : Anzahl der mitgelesenen (?)-MyBBS-Infos Sum : Summe von Set + Read Bei der Ausgabe werden nur Box-Calls ausgegeben, die mehr als ein selbstgesetztes Mybbs aufweisen koennen, Dadurch wird eine Menge Kleinvieh aus der Liste gehalten... Wer sich fuer spezielle Rufzeichenbloecke interessiert, kann einen Prefix als Argument angeben. Z.B. wird bei > USERSTAT c DB0 nur eine MyBBS-Statistik von DB0-Boxen ausgeben. Die Sortierung (Schalter -s) sortiert nach Anzahl der SET-Eintraege, nicht etwa nach Rufzeichen! Das kann bei vielen Boxen sehr lang dauern! -f speichert in "bbsliste.imp". 3.2.4 USERSTAT u ---------------- Zeigt alle User (mit Pfad!) an, die User-FWD eingestellt haben. -f speichert die Ausgabe in "userfwd.imp". 3.2.5 USERSTAT m [plus-Monate] -------------------------------------- Bei der Monatsuebersicht werden alle User mit Call aufgelistet, die seit der angegebenen Zahl von Monaten kein MyBBBS mehr eingegeben haben. Die (optionale) zweite Angabe ermoeglicht es, den Zaehlzeitraum um die angegebene Zahl Monate auszudehnen. Beispiel: Alle Calls von Eintraegen, die 12-16 Monate alt sind: > USERSTAT m 12 4 Auch hier kann das Sortieren u.U. sehr lange dauern und die Datenmenge groesseren Umfang annehmen! Also ggf auf -s verzichten, und dafuer -f angeben! -f speichert die Ausgabe in "mybbs.imp". 3.2.6 USERSTAT o ---------------- Dies ist die eigentliche OLDMYBBS-Funktion (deswegen das 'o'). Sie zaehlt alle MyBBS-Eintraege und sortiert sie dem Alter in Monaten nach (bei mehr als 12 Monaten nach Jahren). Dabei werden nur die MyBBS-Daten ausgewertet, die durch MyBBS-Eingabe oder MyBBS-Forward entstanden sind, aber nicht diejenigen, welche von der Box nur durch Mail-Lesen gelernt wurden (das sind die, die ein ? statt @ vor der Adresse haben). Das Ergebniss wird dann tabellarisch aufgelistet. Diese Funktion benoetigt KEIN Argument! Der Schalter -s ist hier sinnlos. -f speichert die Ausgabe in "oldmybbs.imp". 3.2.7 USERSTAT x ---------------------------------- Diese NEUE Funktion dient dazu, LOKAL die Mybbs-Eintraege einer Box umzustellen, wenn diese ihr Rufzeichen aendert (was ja in letzter Zeit gar nicht mehr so selten ist, hi). Beim Aufruf wird USERS.BCM nach dem Mybbs durchsucht (aehnlich wie B); fuer jeden gefundenen User wird ein SETU-Befehl ausgegeben. Mit der Option -f werden diese Befehle ebenfalls in eine Datei ".imp" geschrieben. Diese IMP-Datei kann direkt ausgefuehrt werden. Beispiel: > USERSTAT x -sf DB0AHA DB0SM 4. Probleme bei langsamen Rechnern ---------------------------------- Hinweis fuer Betreiber von PC-Flexnet und BCM auf langsamen Rechnern: Da fast alle Funktionen (ausser A) recht lange dauern, wenn die Datei USERS.BCM sehr umfangreich ist, kann es vorkommen, dass die QSOs durch das 3-Minuten-Timeout des L1 abgeworfen werden. In diesen Faellen kann man NUR mit der Option -f arbeiten, um das Ergebnis dann spaeter in einer Datei anzusehen (jeweilige Filenamen siehe oben). vy 73 de Patrick - DF3VI @ DB0RWI.#NRW.DEU.EU