home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Carsten's PPE Collection
/
Carstens_PPE_Collection_2007.zip
/
T
/
TCLC_100.ZIP
/
TCLC.DOC
< prev
next >
Wrap
Text File
|
1994-04-10
|
27KB
|
627 lines
───╥─── ╥ Total Control LastCallers
║ ╓────╖ ║ ╓────╖ For PCBoard 15.x
║ ║ ║ ║ Version 1.00
║ ║ ║ ║
╨ ╙────╜ ╙───── ╙────╜ (C) Copyright 1994 Olivier Reubens
Courtesy of:
FUN-derbird BBS
Node 1: +32-(0)50-620.112 (ZyXEL 19200)
Node 2: +32-(0)50-625.717 (USRobotics Courier Dual Standard)
FidoNet: 2:291/1800.20
CDN: 94:801/108
Olivier Reubens
Lippenslaan 205
B-8300 Knokke-Heist
BELGIUM
Introduction
────────────
TCLC was born out of a need for a better Last Callers generator.
There are many alternative systems available. In all kinds of
varieties (Doors, PPE...) But they are all limited to a fixed
layout of the generated last callers list. Most of them allow you
to define a personalized header and footer, a few allow you to
change the colors of the listed fields, but that's as far as
configurability goes for the average Last Caller. TCLC is
different.... As far as I know, TCLC is capable of creating a last
callers list which resembles any other last caller program
currently available, and it goes even way beyond that.
If you currently use a last caller program, you should really
consider using TCLC. If you have been looking for one which does
what you want it to do, TCLC is probably the choice for you too.
TCLC is not like most last caller programs currently available.
Over 75% of them are PPE. Most of the rest are DOORs. TCLC is
neither of the two. TCLC is a caller log analysing program which
creates a bulletin file which you can display either at login, or
by selecting the bulletin command.
Features of TCLC
────────────────
- Generate last caller lists up to last 100 callers, any number
from 0 to 100 is possible.
- Last callers TODAY. Alternatively, you could limit the list to
display ONLY calls made today.
- Last 50 days list. List activity on a day to day basis. Again,
any number from 0 to 50 is possible.
- Last 50 months list. List activity on a month to month basis.
(Any number from 0 to 50)
- List calls with last caller on top, or last caller at the bottom.
- Node-specific or system lastcaller, and even combinations of
these.
- TOTAL CONTROL over the layout of the generated listing, you pick
any of the possible fields, and display them in any order, any
color, and even multiple colors per field.
- Multi-format. You can create multiple lists with different
layouts, all in one single run of TCLC.
- FAST. Even though the entire process of TCLC may seem complex,
a single run of TCLC takes only a couple of seconds to complete.
- NON CRIPPLED, fully functional shareware. TCLC is not crippled
in any way, it has NO delays or begmessages. It only displays
'<UNREGISTERED>' at the end of the bulletin. Registered owners
of TCLC can make use of some added features.
For Registered users only.
- Level names. In stead of having a security level like 10, 100...
you can define names like 'New User', 'Co-sysop' or 'Elite' for
each security level possible.
- Local call faking. Fake local calls as being remote ones. Not
only will the last caller list display a connect rate (as
opposedd to 'LOCAL') but also the caller log will reflect the
'faked' status, so other caller log analysing programs will be
fooled too.
- Call hiding. Hides certain users or security levels. These
users will NOT be listed in the last caller bulletin. Their
download, upload, online time and call will be accounted for in
the daily and monthly statistics however.
- No Statistics. The upload, download, online time, and call will
not be accounted in the daily and monthly statistics. This also
on a name or security level basis.
- Log deleting. Deletes the log entries for certain users or
security levels.
Files included in the TCLC distribution archive
───────────────────────────────────────────────
TCLC.EXE The main executable.
TCLC.DOC This file.
TCLC.INI Sample INI file and description.
TCLC.LAY Sample Layout & description.
REGISTER.FRM Registration form for TCLC.
FILE_ID.DIZ Internal description file.
*.LAY Sample layout files. Thanks go out to their
respective creators.
Program requirements
────────────────────
TCLC was designed to work on PCBoard 15.1 most of the operation of
TCLC is compatible with version 14.5a and 15.0 of PCBoard, but some
of the collected statistics will be incomplete.
TCLC requires DOS 3.x or later, as it uses DOS SHARE-compatible
file reads and writes.
TCLC's memory requirements are moderate (about 328Kb).
USERS file, and USERS indexfiles accessible in the same path.
(You can define this in PCBSetup, Filelocations)
You may need to swap out when executing the $$LOGOFF.BAT when
you're running in a limited memory environment. (PCBSetup)
Recommended settings in TCLC are
- PCBSetup
- A Sysop information
- Use Real Name (Yes=Use name found in USERS File) _Y_
Not having this setting can result in TCLC failing to
locate the user record.
- G Configuration Options
- E Logging Options
- Log Caller Number to Disk : _Y_
Not having this section will result in not being able to
use the caller number in the bulletins.
Updates & Bugfixes
──────────────────
The newest version of TCLC is always available on my BBS.
FUN-derbird +32-(0)50-620.112 ZyXEL 19200
+32-(0)50-625.717 USRobotics 16800 Dual
On top of that, I will try to always have the most current version
available on following BBSes
CoreLand +32-50-393.482 ZyXEL 19200
Triplex BBS +358-05062277 Dolphin 19200
The End of Time +1-803-855-0783 USR 21.6 DS
Ground Zero +1-803-855-9848 Zoom 28800
Salt Air BBS +1-801-261-8976 USR 16800 DS
+1-801-261-8979 Hayes Ultra
If you want to be an active distributor of TCLC and any other
programs I created give my board a call, and we can discus terms.
Greetings & Thanks
──────────────────
The TCLC Beta Testing team :
Olivier Vanbiervliet,
Cosysop of my BBS, and sysop of CoreLand BBS.
Royal,
TET Member, and sysop of Triplex BBS.
Other Thanks :
Clark Development Company,
For providing us with the best BBS program available.
Borland International,
For providing us with an outstanding line of compilers.
Registration
────────────
TCLC is not free; nor is TCLC crippled to force registration. TCLC
is fully functional, and will always remain so. The only variation
with the registered copies is with the extra features. You have
the right (in fact, I encourage you) to copy this program and use
it in any way you see fit. There is no cost for the use of this
program nor is there any restriction on the time you are allowed to
use it.
Why register? Besides a clean conscience, you will get a
registration key that will work for all future versions of TCLC,
and will enable the extra features of TCLC. It will also replace
the <UNREGISTERED> message by a registered to message.
Why fully functional ? Well... seing the amount of software piracy
around these days there's little use in trying to protect your
program against illegal use, as no program is crack-proof. So why
should I bother spending hours of time trying to find a clever
protection technique a pirate will crack in a couple of minutes.
With the idea in mind of "You can't crack what's not there", I
decided to tackle this problem in another way.
The registration key will be sent to you :
- by mail (snail-mail).
- by message/file on your BBS.
- by netmail.
The registration fee for your unique code is 15US$. Because not
everyone can easily get dollars, you can also send me the money in
your local currency. Just approximate the 15US$ in your local
currency in banknotes only. Send the money and a filled in
registration form to the above mentionned address. The
registration key will be ready for you as soon as possible.
License, Warranty and disclaimer
────────────────────────────────
I'll keep this part short and sweet, and dispense with the
legal-ese:
License: You are allowed to use TCLC for as long as you wish, at the
point you decide you need the extra features, or decide I
deserve credit for my work, you need to register. TCLC
registration is a license for your use of TCLC; I retain
ownership of the software. A single registration applies to a
single BBS system, regardless of the number of computers used in
the system. If you run two or more distinct BBS systems on the
same computer or network (with different names), you require two
or more TCLC registrations. Refer to the registration form for
the currect pricing structure.
Warranty: There isn't one. The only thing I'll guarantee is that
TCLC will take up disk space, and will disappear when deleted.
Disclaimer: I'm not responsible for anything bad that happens. TCLC
works here, but I cannot be held responsible for it not working
on your computer or doing any damage to hardware or software.
If these aren't agreeable with you, then the best thing to do is
delete TCLC right now. I'll do my best to help any user
(registered or not) that wants to use TCLC, and I'll act on bug
reports quickly, but I simply cannot and will not be responsible
for anything bad, like lost data, disk crashes, or whatever else
you can think of.
Installation
────────────
Copy TCLC.EXE to a location accessible by all nodes you want to
collect last caller information from.
Create a new, or edit the provided sample INI file (TCLC.INI). Use a
normal text editor to edit this INI file, do not use a word processor.
You can use any name you like, although I would suggest leaving the
extention to INI. TCLC.INI has full explanation on the possible
settings and switches so you'll need to refer to TCLC.INI for more
explnation on the format and switches/settings. The layout definition
however is explained in detail furtheron in this document.
Add TCLC to $$LOGOFF.BAT :
TCLC <INIFILE> <CALLERLOG>
You should replace <INIFILE> with the appropriate filename (preferably
with a full path) of the INI file to use, and replace the <CALLERLOG>
with the filename (full path) of the caller log to process.
When running a multinode BBS, you may want to create a $$LOGOFF.BAT for
each node in use. See multinode operation.
Create the TCLC Datafile :
TCLC <INIFILE> /NEW
Again, replace <INIFILE> by the respective INI file to use.
The INI & Layout File
─────────────────────
The Layout definition file, is basically also an INI file, all
references to INI file in this section of the manual also apply to the
layout file(s).
The INI file informs TCLC where it can find certain PCBoard files, and
how it should create the last caller bulletins. The INI file is a
standard ASCII file which you should create and/or modify using a text
editor.
Empty lines and lines starting with a ';' are considered to be comment
lines and they are skipped without any action taken.
Comment lines can have any length. Keyword lines however are limited
to 254 characters (including the keyword itself). In the layout
definition however it's possible to create layout lines longer than
254 characters. You need to end the line before position 254, end the
line with a backslash ('\'). You can then CONTINUE the layout
definition on the NEXT line.
You can define how TCLC should behave by defining certain keywords.
You cannot create keywords, you can only change their value. A set of
keywords is available, and define how TCLC should work by giving the
keywords specific values. A value is given with a textline
similar to the following.
KEYWORD=value[,value,...]
The keyword itself is case insensitive. Some keywords require a
single parameter. Others require more than one parameter,
parameters are separated with commas.
Usually one keyword defines the value for one variable in the
program. When defining a keyword twice, you will get an error. In
some cases the keywords define values in an array, in this case you
can define the same keyword several times. There are two ways to
define multiple lines of an array keyword.
- You define several lines with the same keyword
KEYWORD=value1
KEYWORD=value2
KEYWORD=value3
- You define several lines for one keyword. This is done by
listing the values one by one in between curly brackets.
KEYWORD={
value1
value2
value3
}
You can list keywords in any order you like, note however that you
should have specified a KEY= before using any of the
registered-version-only-keywords (LOCALUSER, HIDEUSER,
NOSTATUSER...).
The INI file is checked when loading, you will get appropriate
error messages when certain keyword definitions do not match the
required format.
- A description of all the possible keywords in the TCLC INI file are
available in the TCLC.INI sample INI file.
- A set of sample layouts are provided in the *.LAY files. see
TCLC.LAY for a complete description of all possible fields in
the Layout files.
In the layout file, it is quite possible the line length limit of 254
characters won't allow you to achive what you really want, if this is
the case, end the line with a backslash '\', and continue the layout
defnition on the NEXT line. Be sure your editor does not accidently
append traling spaces after the backslash.
Running TCLC
────────────
The command syntax for TCLC is
TCLC INIFile /NEW
This will create a new empty datafile for TCLC. Use this option
with care as it will erase any statistics collected so far. You
will need to create a new file when starting to use TCLC. You
usually will not need to do this again.
TCLC INIFile [CallerLog]
This is the normal processing mode for TCLC. TCLC reads the
INI file. If a callerlog is specified, it is analysed, and the TCLC
datafile is updated to reflect the newly gathered statistics. TCLC
then continues to create the requested bulletins with the layout
defined in the INI file.
Multinode operation
───────────────────
When setting up TCLC for multinode, it is important to decide
whether you want systemwide lastcallers, or a node specific
lastcaller.
- Systemwide
Create ONE TCLC Datafile in a location accessible by all nodes.
Use the SAME INI file on each node. In the $$LOGOFF.BAT you
specify which node's caller log to process. The $$LOGOFF.BAT
of node 1 would have :
TCLC TCLC.INI C:\PCB\MAIN\CALLER1.
The $$LOGOFF.BAT of node 2 would have :
TCLC TCLC.INI C:\PCB\MAIN\CALLER2.
And so on for the other nodes.
- Node specific
Create a TCLC Datafile for each node, and use a different INI
file for each node. The $$LOGOFF.BAT of node 1 would have :
TCLC TCLC1.INI C:\PCB\MAIN\CALLER1.
The $$LOGOFF.BAT of node 2 would have :
TCLC TCLC2.INI C:\PCB\MAIN\CALLER2.
And so on for the other nodes.
- Combination
If you want to create systemwide AND node specific last callers,
all you need to do is create a TCLC Datafile for all nodes, and
one for each node you want separate lastcallers for.
The $$LOGOFF.BAT will in that case have two entries one to update
the node specific datafile, and one to update the systemwide
datafile.
! NOTE. When using LOCALUSER or DELETEUSER (registered version
only) care should be taken with the order in which the two (or
more) INI files are processed. If the first INI file deletes
the user, the following INI files will reprocess the previous
caller. This will not cause any problems as TCLC will detect
this, but the call, daily and monthly statistic will not be
entirely correct. The first INI file should take care of all
LOCALUSER entries, while the last INI file should take care of
all DELETEUSER entries.
Multi-layout operation
──────────────────────
You can generate several bulletins with one run of TCLC. All you
need to do is have multiple CREATE= entries in the INI file. You
can define a separate Layout file for each CREATE entry.
TCLC allows you to create up to 10 different types of bulletins in
one go. If you need more, you will need to create several INI
files, and have TCLC process those INI files one by one. The first
TCLC entry in the $$LOGOFF.BAT will need to process the caller log.
The subsequent entries do not need to do this. You will get
something like this in the $$LOGOFF.BAT :
TCLC TCLC1.INI CALLER1.
TCLC TCLC2.INI
TCLC TCLC3.INI
! Note, here also, the note of the LOCALUSER and DELETEUSER as
specified above applies.
Creating a personalized layout
──────────────────────────────
TCLC comes with a set of sample layouts which can be found in the
*.LAY files. These are either layouts designed for TCLC or are
carbon-copy layout definitions from some of the other available
last caller lists.
You'll probably want to change the provided layouts or change the
colors to better match with the other screens of your board. But
it's also possible you want to create something totally new.
When looking at a finished last caller bulletin, you will notice it
has three distinctive parts :
Example (color codes removed for ease of use) :
1│ Last few callers on this BBS
2│
3│ Alias/Name Location Speed Node DL Kb Time
4│ ------------------- ------------------- ----- ---- ------ -----
5│ Jake Smith New York City 14400 1 1,167 12:15
6│ Carol Young Atlanta 2400 2 12:27
7│ Dark Angel - Somewhere - 16800 1 3,679 13:08
8│
9│
10│ Last few days
11│
12│ Date #Calls UL Kb UL File DL Kb DL File Busy
13│ -------- ------ ------- ------- ------- ------- ---------
14│ 04-03-94 13 697 2 4,275 10 94Min.
15│ 03-03-94 48 5,198 12 28,347 49 719Min.
16│ 02-03-94 51 3,679 7 22,721 42 653Min.
17│
18│
19│ Total Control Last Callers V1.00. Registered to: Olivier Reubens
These three parts are :
- Fixed information. (Lines 1, 2, 3, 4, 8, 9, 10, 11, 12, 13, 17,
18). Usually headers and footers
- Variable information records. (Lines 5, 6, 7, 14, 15, 16)
Last caller data, daily and monthly statistics.
- Copyright banner. (Line 19)
You can change the contents of the fixed and variable information,
but you can only change the color of the copyright banner.
Fixed information
─────────────────
You specify the headers, footers and where to insert the last
callers, daily and/or monthly statistics in the LAYOUT= section of
the INI File. This LAYOUT= consists of a maximum of 64 lines. It's
a direct copy of what you would find in the bulletin itself. You
can use PCBoard @X color codes and even PCBoard macro's. You can
also use ANSi codes, but I would definitely recommend using ONLY
PCBoard color codes as you immediately have a bulletin for color
and mono. Although I haven't tried myself (YET), it should even be
possible to create a layout using RIP codes.
You also specify where TCLC should insert last caller, daily or
monthly statistics. You do not need to use all three. You can
choose any combination in any order you like. To specify where
TCLC should insert the variable information, you specify a line
with :
#USER# to insert last caller information.
#DAY# to insert daily statistics
#MONTH# to insert monthly statistics.
For the above example the layout specification in the INI file would
look like this :
│LAYOUT={
│Last few callers on this BBS
│
│ Alias/Name Location Speed Node DL Kb Time
│ ------------------- ------------------- ----- ---- ------ -----
│#USER#
│
│
│ Last few days
│
│ Date #Calls UL Kb UL File DL Kb DL File Busy
│ -------- ------ ------- ------- ------- ------- ---------
│#DAY#
│
│}
Variable information
────────────────────
Variable information is a little harder to understand.
When creating the bulletin, TCLC replaces the #USER#, #DAY# and
#MONTH# with multiple variable information records. The amount of
records it uses depends on the CREATE= (see INI File) used.
Each variable information record can be up to 8 lines high. The
variable information layout is specified in the INI File.
USERSTATS= specifies the last caller statistics layout.
DAYSTATS= specifies the daily statistics layout.
MONTHSTATS= specifies the monthly statistics layout.
The fields in the records are represented with alphabetical
characters. The 'A' for example represents the user alias in a last
caller record. It doesn't stop there however. Since the user alias
has 25 characters, so will it's field representation. To include
every character of the alias, you would need to specify
"AAAAAAAAAAAAAAAAAAAAAAAAA". Because each consecutive 'A'
character is replaced with a consecutive character of the user
alias. You can change colors INSIDE the alias, and thus have
'fading' fields ("@X0FAA@X0BAA@X03AA@X07AA@X08AAAAAAAAAAAAAAAAA").
You do not need to specify a full field. The uploaded bytes for
example could be used without the last three digits thus giving you
a downloaded kilobytes field. Take away the last 6 digits, and you
have a downloaded megabytes field.
There's more...
When using a lowercase character instead of an uppercase one, TCLC
will skip a character from the variable information record. This
allows you to delete leading characters and characters in the
middle of a field. The numerical fields are formatted with
separators for thousands, milions... You can use lowercase
characters to have unformatted fields. The character 'D'
represents Downloaded bytes in the last caller record, and ALWAYS
has the following format 999,999,999. Here are some examples of
how you could use this downloaded bytes field (example: downloaded
bytes is 2,641,157 bytes)
Layout Bulletin Description
───────────── ───────────── ──────────────────────────────────────
"DDDDDDDDDDD" " 2,641,157" Normal.
"DDDdDDDdDDD" " 2641157" No commas.
"ddDDDDDDDDD" "2,641,157" Skip 100-milion and 10-Milion digit.
This can be useful to reduce the
width of the field. If no-one on the
BBS can ever download more than
9,999,999 bytes in a single day this
can safely limit field width.
"ddddDDDdDDD" "641157" Oops. Digits removed.
"DDDdDDD" " 2641" Kilobytes downloaded, no comma.
"ddDdDDD" "2641" Kilobytes downloaded, no comma, width
reduced (see above for use).
There's just one problem left to deal with.
Since the alphabetical characters are used for representing the
variable record fields you can no longer use them to display text
in a variable record, at least, not without some effort. TCLC is
smart enough to recognize PCBoard color codes, so you don't need to
do extra work to use those. To include text or use the '@'
character in a variable record, you need to put that text in
between quotes (') or double quotes ("). Continuing the example,
to have " 2,641Kb" in the bulletin you would use dDDDDDD"Kb" or
dDDDDDD'Kb'. Alternatively, if you only need to display ONE
character you can precede the single character with a tilde ('~')
(Alt-126). So, dDDDDDD~K~b is also valid.
In the example layout definition, the following was used
│USERSTATS={
│ AAAAAAAAAAAAAAAAAAA LLLLLLLLLLLLLLLLLLL CCCCC RRR dDDDDDD ZZZZZ
│}
│DAYSTATS={
│ YYYYYYYY MMMMMM uuuUUUUUUU VVVVVVV dddDDDDDDD EEEEEEE oOOOOO"Min."
│}
End of manual.
See :
TCLC.INI For a complete description of the contents and settings
of the INI file.
TCLC.LAY For a description of the layout definition and available
fields.
*.LAY For sample layout definitions.
Each file contains a colored sample of a generated
bulletin with the settings 10 last caller, 5 last days,
5 last months. You should use PCBEDIT or another
program which displays the PCBoard @X color codes to see
what the resulting bulletin looks like.