home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.wwiv.com
/
ftp.wwiv.com.zip
/
ftp.wwiv.com
/
pub
/
BBS
/
QNODE142.ZIP
/
QNODE.DOC
< prev
next >
Wrap
Text File
|
1992-05-15
|
39KB
|
878 lines
############
################
### ###
### ###
### ### ## ## ##### ###### #######
### ### ### ## ## ## ## ## ##
### ### #### ## ## ## ## ## ##
### ### ## ## ## ## ## ## ## #####
### ### ## #### ## ## ## ## ##
### ## ### ## ### ## ## ## ## ##
### ## ### ## ## ##### ###### #######
### ## ###
### ###### ## ## ## ## ## ###
#### #### ## ## ### ## ## ## ##
### #### #### ## ###### ##
################### #### ## ## ##
############ ## ## #### ## ## #####
Table of Contents
Part 1 - QNode
1.1 - Introduction
1.2 - Program Usage
1.3 - Error Levels
1.4 - Point Nets
1.5 - Multiple Networks
Part 2 - QDiff
2.1 - Introduction
2.2 - Program Usage
2.3 - Error Levels
Part 3 - QIDX
3.1 - Introduction
3.2 - Program Usage
3.3 - Error Levels
Part 4 - Configuration File
4.1 - Introduction
4.2 - Configuration File Commands
Part 5 - Common Questions
Part 1 - QNode
1.1 - Introduction
QNode was originally designed to be a fast version 6 nodelist compiler
which could handle my MNP modem properly, seeing as no other nodelist
compiler was really able to do the job.
When version 7 nodelists came out, and I found out just how slow the
indexing system was, I determined that QNode really needed an update to
handle the v7 nodelist.
QNode is a free program, and although I don't refuse any money, no
money is expected. By the same token, you are NOT allowed to make any
money through QNode.
QNode is also a copyrighted program, and by that token, you are not
allowed to distribute any modified, or incomplete copies of the QNode
distribution archive. (Re-Archiving is not considered modification (at
least by me.))
To get the latest version of QNode, simply request the magic name of
QNODE from 1:140/26. This is probably going to net you a pre-release
copy however. The most recent release version will probably be
available in the SDS-SOFTDIST area.
Something that started with QNode 1.40 is that even numbered versions
will be true release versions, while odd-numbered versions will be the
pre-release versions.
1.2 - Program Usage
QNode will use the file 'QNODE.CFG', or the first command line
parameter as it's parameter file, and will always search and find the
latest 'NODELIST.###' file (time-stamps are used, so end of year wrap
isn't a problem.) and compile it into one of these sets of files:
VERSION6 - NODELIST.DAT, NODELIST.IDX
VERSION7 - NODEX.DAT
VERSION7, INDEX - NODEX.NDX
USERLIST - FIDOUSER.LST
USERLIST, INDEX - SYSOP.NDX
Please note that you are not allowed to create a version 7 index file
(NODEX.NDX or SYSOP.NDX) as well as the FIDOUSER.LST file. To create
both files, you must not use QIDX to build the version 7 indexes
instead of having QNode do it.
Once QNode has read it's configuration file(s), and found a nodelist to
compile, it will start processing the nodelist. While compiling, you
will notice that a status line is kept on the screen showing the most
recent Zone, Region, Net, and Hub. Hubs will only be shown for nets
which are being included in the final nodelist. If a net is not to be
included in the final nodelist, you will see the word 'EXCLUDE' after
the line, and QNode will enter an extremely fast 'overdrive' mode to
get to the next network.
If you only use some zones from the nodelist, then QNode will stop
compiling the nodelist (and the nodelist statistics) the instant that
it hits a zone higher than the last one that you requested nodes be
compiled from.
1.3 - ERRORLEVELS
The errorlevels which can be returned by QNODE are:
0 = Nodelist compiled fine.
1 = No Nodelist found.
2 = Cannot open configuration file.
3 = Cannot open nodelist.
4 = Errors exist in the configuration file.
1.4 - POINTNETS
Pointnets can be done in a couple of different ways, depending upon
your system settings. You can either create 'fake-net' point listings,
or you can create a special 'point-control' file.
In version 6 mode, you are only allowed to create a 'fake-net', but in
version 7 mode, you can do either (or both for that matter.)
A 'fake-net' is a dummy network which is not in the distribution
nodelist, which lists your points as 'virtual' network addresses.
These dummy network number start at 30000, and go up from there. You
should apply to your Zone Co-Ordinator for an official point-net
number, but for testing purposes, you can pretty much choose a random
number between 30000 and 32767.
Each node within this fake-net is actually a point, where the node
number from the fake-net is the point number of the node. For example,
if I used the fake-net number of 33000, then the points for 140/26.1,
140/26.2, 140/26.3, ... would be listed in the nodelist as 33000/1,
33000/2, 33000/3, ... . It is the responsibility of your mail packer
to handle these fake-net numbers. (QMail, and Opus 1.70+ will handle
fake-nets in this fashion.)
A sample of a fake-net follows below:
---cut here---
Host,33000,The_North_Village,City,James_West,1-306-384-0836,2400,MNP
,1,My_First_Point,City,Sysop_Name,1-306-555-1212,1200
,2,My_Second_Point,City,Sysop_Name,1-306-555-1212,9600,HST,V32,V32b
---cut here---
This fake-net must be 'IMPORT'ed somewhere within the nodelist. You
can import it anywhere you like, but normally it should be imported
after your own network, region, or zone.
To import after your own network, you would use the configuration file
command: 'IMPORT 1:140 POINT.LST'. To import after your own region,
you would use the command: 'IMPORT 1:17 POINT.LST'. To import after
your own zone, you would use the command: 'IMPORT 1: POINT.LST'.
A 'point-control' file is one file which contains listings for all
points that you will have access to. It's fairly similar to the 'fake-
net' file, but instead of having a dummy network for each node, the
points are attached to the node itself.
To use a point-control file, you should use the 'POINTS' command to
include the file which you list all of your points in. For example:
'POINTS POINT.LST'. In the point-control file, everything after the
bosses node number is ignored, so you can use that as any sort of
comment that you like. (The actual information for the boss node is
taken from the nodelist.)
A sample of a point-control file follows:
--- cut here ---
Boss,1:140/26,The_North_Village
,1,AB_Data_Sales,City,Sysop,1-306-555-1212,1200
,2,Another_Point,City,Somebody,1-306-555-1212,9600,HST,V32,V32b
Boss,1:140/200,Another_Boss_Node
,1,His_First_Point,City,Sysop_Name,1-306-555-1212,1200
Pvt,2,His_Private_Point,City,Sysop,-Unpublished-,1-306-555-1212,2400
--- cut here ---
1.5 - MULTIPLE NETWORKS
QNode also supports the compilation of many different input nodelists
into one big output file. This is used for the inclusion of other
networks (like SIGnet for example.)
The configuration file command which enables this is the 'NODELIST'
command, which instructs QNode on which nodelists that it is supposed
to compile.
To compile a joint Fidonet, Signet system you would use the two
commands: 'NODELIST NODELIST' and 'NODELIST SIGNODES'.
WARNING: If you use a 'NODELIST' command in your configuration file,
then the default fidonet nodelist will NOT be included. You must
explicitly include the 'NODELIST NODELIST' statement if you still wish
to include the fidonet nodelist.
Part 2 - QDIFF
2.1 - Introduction
QDiff is a companion program to QNode, which applies NODEDIFF files to
nodelists, and will generated an updated nodelist. QDiff can apply an
almost unlimited number of nodediffs simultaneously. For example, if
you have NODELIST.101, NODEDIFF.108, NODEDIFF.115, NODEDIFF.122, and
NODEDIFF.129 after running QDiff, you will be left with NODELIST.129.
Note: The actual limit will be determined by the number of file
handles that QDiff is able to open simultaneously. Since it doesn't
bother to expand it's handle table, the true limit would be around a
dozen nodediffs.
2.2 - Program Usage
QDiff has some pretty simple usage for most people: Just run it
without any parameters. It's all automatic. The only thing you have
to do is make sure that the nodelist and nodediff files are in the
directory that you are in when you run QDiff.
QDiff first searches through your NODELIST files to locate the one with
the most recent time stamp, and then it will go through your NODEDIFF
files trying to find ones which are more recent. If it does not find
any, then it will search for any archived NODEDIFF files to see whether
any of them exist. (Current archivers which are recognized are: ARC,
ZIP, and LHA, based upon the first letter of the extension.)
You are NOT allowed to 'mix-and-match' archived and un-archived
nodediffs. You must supply one sort or the other to get a proper
output file.
If given an archived nodediff, QDiff will extract it immediately using
one of the following archive programs:
for NODEDIFF.A##:
PKUNPAK, PKXARC, ARCE, PAK
for NODEDIFF.Z##:
PKUNZIP, PAK
for NODEDIFF.L##:
LHA, LHARC
QDiff requires LOTS of disk space while running. It must create an
entirely new nodelist on disk before it can delete the old one. This
new nodelist will be created in a file named 'QDIFF$.TMP', which will
be renamed to the correct name if the nodelist is compiled
successfully.
To use QDiff with multiple networks, you must use some command line
parameters. For each network that you wish to compile, you should put
the name of the nodelist, an exclamation point, and the name of the
nodediff file. You can do more than one network at a time, but it's
suggested that you just do one network at once. To cause QDiff to look
for a SIGnet nodelist/diff combination for instance, you would use the
command: 'QDIFF SIGNODES!SIGDIFF'
Other parameters that are supported by QDiff are as follows:
/D Deletes all NODEDIFF files when completed. This will not delete
archived nodediff files. If a CRC error is detected during compile,
the nodediff files will still be deleted.
/N Deletes the old nodelist.
/Z Instructs QDiff to place an EOF mark at the end of the new nodelist.
This is not required for either QDiff or QNode, but some utilities
seem to expect it I guess.
/P Instructs QDiff to run some sort of command based upon the new nodelist
or nodediff files. This command can include the following percent
directives:
%1 - Last 1 character of the julian date of the new nodelist.
%2 - Last 2 characters of the julian date of the new nodelist.
%3 - The full julian date of the new nodelist.
%D - The file name (without numbers) of the NODEDIFF file.
%N - The file name (without numbers) of the NODELIST file.
The %D and %N parameters both include a trailing period.
To include spaces in the command (as most commands require), you would
have to encase the parameter in quotation marks. Some sample commands
follow:
/P:"pkpak -otc a nodelist.a%2 nodelist.%3"
/P:"pkzip -a nodelist.z%2 nodelist.%3"
/P:"lha a %nl%2 %n%3"
NOTE: Within a batch file, you must use two percent signs.
2.3 - Error Levels
The errorlevels which can be returned by QDIFF are:
0 = NODEDIFF applied normally
1 = NODELIST does not require updating
2 = Cannot find nodediff
3 = Cannot find nodelist
4 = Cannot find extraction program
5 = NODEDIFF not found after running extraction program
6 = Extraction program reported an errorlevel other than 0
7 = Disk error during writing, probably disk full
8 = CRC error in new nodelist
Part 3 - QIDX
3.1 - Introduction
QIDX is a simple program which was written to generate the nodelist
indexes without having to compile the nodelist. It is also used when
somebody wishes to generate the FIDOUSER.LST file as well as the
version 7 indexes.
The ability to build the user index was just thrown in.
3.2 - Program Usage
To run QIDX, simply type 'QIDX' followed by the list of parameters for
the indexes to be built. These parameters are:
/N Generates the node number index. You may specify /N:filename to change
the name of the index. (This defaults to NODEX.NDX)
/S Generates the sysop index. You may specify /S:filename to change the
name of the index. (This defaults to SYSOP.NDX)
/U Generates the user file index. You may specify /U:filename to change
the name of the index. (This defaults to USER.NDX)
NOTE: USER.DAT must be in the current directory for /U to work.
An additional parameter which is almost guaranteed to make the indexes
unusable to everything also exists. This parameter is:
/B Change block size (default 512). This changes the size of the blocks
within the index file. No other values are known to work.
If you use a large portion, or all, of the nodelist, then you may wish
to have QIDX build the node number and sysop indexes separately. If
you build both at once, then QIDX must divide memory in half for each
index. If building only one, then it can use all of memory.
To have QIDX compile a different nodelist data file than NODEX.DAT, you
can simply specify the nodelist filename on the command line.
To compile SIGX.DAT into SIGX.NDX and SIGSYSOP.NDX, you would use the
command line:
QIDX SIGX.DAT /N:SIGX.NDX /S:SIGSYSOP.NDX
3.3 - Errorlevels
0 = Everythings fine.
1 = Could not open either the nodelist, or the userlist data file.
2 = Bad parameter specified on command line.
Part 4 - Configuration File
4.1 - Introduction
The QNode configuration file is a free-format text file, which consists
of a keyword followed by optional parameters. The file is totally case
in-sensitive, although some keywords may not be. To place a comment
within the file, preceded the comment by a semi-colon (;).
4.2 - Configuration File Commands
NOTE: Any parameter which starts with 'USES' may be enabled by
preceding the statement with 'USES' and disabled by preceding the
statement with '!USES'.
*** STUFF ABOUT YOUR SYSTEM ***
ADDR #:#/#.# {#:#/#.#} ; SUPERCEDES 'ZONE, NET, NODE'
This sets YOUR network node number. Additional addresses may be
specified, but the first address listed is the default.
You are also allowed to place multiple ADDR lines in your configuration
file, but each subsequent one will totally replace the previous ones.
This can however be used to reduce typing by setting default zone/net
numbers.
WARNING: If you use multiple ADDR lines, be absolutely sure that the
last ADDR line in the file is the real one, with all addresses, and the
first address being your 'normal' address.
COUNTRY #
This sets your countries telephone direct dial code. In Canada and the
United States, this is '1'.
NODELIST filename{ #{ node-data{ sysop-data}}}
This is to be used to enable multiple, or non-standard nodelist
generation. If no nodelist lines are specified, it will default to:
'NODELIST'. You may have as many of these lines as you like. The
optional number specifies a 'zone override'. If this number is non-zero
then the first zone will be taken to be the number you specify, instead
of the zone listed. Additional zones will be incremented by one.
The zone override is only valid for the nodelist that it is listed for.
An example for a fidonet + signet system follows:
NODELIST NODELIST
NODELIST SIGNODES
The node-data and sysop-data files are used in v7 mode to compile that
nodelist to an entirely different set of data files. If these options
are never specified, they will default to: NODEX and SYSOP.
WARNING: Do not use file extensions on these commands.
Whenever an entry is encountered with a file specified, the current
file will be closed, and the new file(s) will be created. The data-
file overides are only supported in VERSION7 mode.
Do *NOT* specify the same file names on a later line. This will only
erase the previous files. To compile multiple entries into the same
file, group all nodelists whose data should go into the same file
together, and then specify the filename only for the first entry.
As a weird example, suppose you want to have NODELIST and SIGNODES
compiled together into NODEX.DAT, NODEX.NDX, and SYSOP.NDX, but you
need SIGNODES to be compiled into SIGX.DAT, SIGX.NDX, and SIGSYSOP.NDX
as well. The proper usage would be:
NODELIST NODELIST
NODELIST SIGNODES
NODELIST SIGNODES 0 SIGX SIGSYSOP
USES USERLIST ; SUPERCEDES 'USERLIST'
If you specify the VERSION7 and INDEX keywords, this requests that
SYSOP.NDX be generated. Otherwise the file 'FIDOUSER.LST' will be
generated. If you have insufficient memory to generate the entire file
'FIDOUSER.LST', then it will be swapped to disk, and the slow process
of userlist merging will commence. To minimize the need for this, you
may wish to reduce the memory consumption of QNode by reducing the
BUFFERS keyword.
USES ALLUSERS ; SUPERCEDES 'ALLUSERS'
This requests that all user names be placed in FIDOUSER.LST, whether
you have them in your nodelist or not. This is normally used for the
ONEZONE or REGULAR style of nodelists. Since inter-zone mail is
normally gate-routed, you do not require the actual node in your
nodelist to send mail to people.
NOTE: This command is ignored if VERSION7 and INDEX are specified.
USES HUBS ; SUPERCEDES 'HUBS'
This asks for hub nodes in nets other than your own to be given mail
command of all private nodes underneath them. Normally, mail command is
given to the host, unless it is in your own net.
USES EMS
This asks for EMS memory to be used for the version 7 nodelist buffers.
This will default to on, so the only use for this command is so that
you can use '!USES EMS' to disable this setting. If there is 64K of
EMS memory available, it will be allocated, mapped in, and 511 version7
buffers will be set up.
ALLOCATE BUFFERS # ; SUPERCEDES 'BUFFERS'
This sets the node buffer size. It can be anywhere from 1 to 511, and
defaults to 511. The only use I can see for this is to give yourself
more memory for the userlist. If you don't have enought memory for the
buffers themselves, it will default to a lower number of nodes.
BUFFERS 256 is frequently sufficient, and gives you some extra memory
for the userlist. Each buffer will take 128 bytes of memory in version
7 mode, and 132 bytes of memory in version 6 mode (and 260 bytes of
memory if you compile both.)
ALLOCATE TEXT #
This sets the memory allocation to be used for auxilliary text files
used in the IMPORT, EXPORT, and FORMAT commands. The default value for
this is 32768. The maximum value is either 65528, or half of remaining
memory (whichever comes first.), but will always get at least 128
bytes. If you are generating FIDOUSER.LST, then this number will be
locked at 128.
WARNING: If these are allocated at a totally inappropriate time, you
may get an out of memory error (error code 203) during the compile. If
you get this error, then you should shrink the allocation. (an
allocation of 128 is guaranteed not to fail, since it's allocated from
the stack, and not from the heap.)
KEEP FIRSTUSER
This tells QNode to keep the first user entry specificed during
nodelist compile. This was the default in QNode <1.41
KEEP LASTUSER
This tells QNode to keep the last copy of a user entry that it
encounters during nodelist compile. This is the default in QNode>=1.41
KEEP ALLUSERS ; SUPERCEDES 'DUPLICATE'
This allows duplicate entries in a VERSION7 sysop index. OPUS doesn't
do anything with the dupes however.
MAXBAUD #[|#] {[FLAG #[|#]] ...}
This sets the maximum baud rate which will be placed in the compiled
nodelist. Any entries above that value will be reduced to that value.
Notice the optional second number after the pipe symbol. This second
number if the modem type to be used. This sets the PREDIAL# to be used
for Opus 1.70+, or the ModemTrans to be used for BinkleyTerm.
The set of flags after the baud rate specify baud rate or dial prefix
extensions. Any node whose entries contains the flag listed will be
changed to the specified baud rate (and optional modem type). Unlike
every other portion of QNode, the flags work on a LAST MATCH rule. In
case of multiple matches, the last one will have precedence. You are
allowed to have up to 20 flags specified.
An example for a 2400 baud, MNP 5 modem is:
MAXBAUD 2400|1 HST 9600|0 MNP 9600|0 V42 9600|0
Where ModemType 0 is a standard MNP dial, and ModemType 1 disables the
MNP for the dial.
And example for an HST w/V32bis is:
MAXBAUD 9600|0 HST 9600|1 V32 9600|1 V32B 9600|2
Where ModemType 0 is a standard dial, ModemType 1 dials the older HST
modems in HST mode, and ModemType 2 dials the newer V32bis modems with
V32bis enabled. This would enable Janus for higher speeds. If you
don't have Janus, you may wish to dial V32B in HST mode as well.
*** NODELIST GENERATION COMMANDS ***
ONEZONE
Asks for only nodes in your zone(s). (ie: ZONE:*/*)
REGULAR
Asks for only your zone(s), plus hub nodes from other zones. (ie:
ZONE:*/* + *:*/0)
ALLZONES
Asks for a complete nodelist (ie: *:*/*)
NOZONES
Asks for NO nodes whatsoever to be included
USES VERSION6 ; SUPERCEDES 'VERSION6'
Asks for a version 6 nodelist (DEFAULT)
USES VERSION7 ; SUPERCEDES 'VERSION7'
Asks for a version 7 nodelist
USES INDEX ; SUPERCEDES 'INDEX'
Asks for version 7 indexes to be created. NOTE: You may wish to use
QIDX instead of this to generate indexes. Either to give more memory
for index creation, or to generate the FIDOUSER.LST file.
WARNING: If you select VERSION7, USERLIST, and INDEX then only the
version 7 sysop index will be generated. To generate a FIDOUSER.LST
file, you must not specify this command.
ANOTHER WARNING: When generating a VERSION7 data file, you MUST create
indexes by one method or another. You must either specify the USES
INDEX, or use QIDX to build the indexes.
*** NODELIST GENERATION MODIFIERS ***
ADD {[nodeid] ...}
DELETE {[nodeid] ...}
These two functions are used to change the list generated by the quick
output list types. The [nodeid] statements may be any of these style
of numbers:
ZONE: Asks for the entire zone
ZONE:REGION Asks for the entire region
ZONE:NET Asks for the entire net
REGION Asks for a region in your own zone
NET Asks for a net in your own zone
-ZONE: Asks for admin node for the zone
ZONE:-REGION Asks for admin nodes from specified region
These commands are processed in the order they are encountered. You
may have as many add and delete lines as you like, in any order. In
cases of multiple matches, the first applicable match will rule.
If you reference nodes in any zone, then the zone admin nodes will be
automatically added into the final output list.
If you ask for the admin nodes for a specific region, then the
independant nodes will be referenced as well.
For example, to add only region 17, and all admin nodes for Zone 1, I
use (with a second ADD line to add all other nets that I ever do
netmail with.)
NOZONES
ADD -1: -10 -11 -12 -13 -14 -15 -16 17 -18 -19
POINTS filename
This will include the specified file as the point-control file. This
keyword is only active while generating a version 7 nodelist. See the
section on pointnets for an example of this file.
INCLUDE filename
This will include the specified file into the QNODE.CFG parsing pass.
I personally use this to include my dial and cost tables, which are
used by every nodelist processor.
EXPORT nodeid filename
This will export, a raw portion of the nodelist into a specified file.
Normally used to get a list of the nodes in your own net. See
ADD/DELETE for nodeid values. This works for all nodes, whether they
are in your nodelist or not.
This can also be used to send an abbreviated nodelist to someone else.
IMPORT nodeid filename
This will import a raw style portion of a nodelist into the generated
nodelist once the value specified by nodeid has passed. (Therefore if
you import with your own net, you add nodes to the end of your net.)
The nodeid values are described in ADD/DELETE.
For example, to add the 'fake-net' 31000 to the end of your zone, you
would use the command: "IMPORT 1: POINT.LST". To add it to the end of
your region, you would use the command: "IMPORT 17 POINT.LST".
To add additional nodes to a network, you can use the import command to
import after a network, with the import file not having any zone,
region, or host commands in it.
NOTE: Any networks created through import files should be explicitly
included in the output file using the 'ADD' keyword. This is not
always necessary, but there are occasions when it is.
FORMAT nodeid filename
This works just like the EXPORT command, except it makes a nice looking
print-out, and it will only work with nodes which have been included in
the output nodelist.
*** BULK NODE MODIFICATIONS ***
SCRIPT minbaud maxbaud cost fromdial todial
This is one form of the script command, which I invented to handle my
2400 baud/MNP 5 modem. In this case, every node which has a baud rate
between (or equal to) the minbaud and the maxbaud, with a cost equal to
the cost, will have the listed dial substitution done to it. (If the
start of the phone number doesn't match the fromdial, that node is not
changed.)
On my system, when I used VERSION6, I used:
SCRIPT 300 2400 0 1- "NOMNP1.SCR" ; Local Calls
SCRIPT 300 2400 25 1- "NOMNP2.SCR" ; No Areacode calls
SCRIPT 300 2400 50 1- "NOMNP3.SCR" ; Long Distance calls
VERSION7 nodelist users would probably want to use the ModemType
settings. (See MAXBAUD)
*** DIAL/COST TABLES ***
In the dial table, there are two parameters after the dial keyword. the
first is the modifications to local calls (ones within your own country
code), and the second is the modifications to the international direct
dial phone numbers (ones with any other country code.) Each of these
entries consists of what to put before the phone number, as well as
what to put after the phone number. To seperate the two, use a slash
(/). For no change to the phone number, use a slash by itself. You
should use the keyword 'End' to terminate the dial and cost tables.
The dial table will replace every phone number that starts with the
first sequence with the second sequence. This is for local or regional
calls where you aren't allowed to dial the entire phone number.
NOTE: Both the dial table and cost table are on a 'first match' system.
Therefore, you should put the entries in in the order of longest to
shortest.
An example follows:
DIAL / 011-
; Adds 011- to international calls, no change to domestic calls
; The following set up local calls from Saskatoon, SK
1-306-242- 242-
1-306-244- 244-
1-306-373- 373-
1-306-374- 374-
1-306-382- 382-
1-306-384- 384-
1-306-652- 652-
1-306-654- 654-
1-306-664- 664-
1-306-665- 665-
1-306-931- 931-
1-306-933- 933-
1-306-934- 934-
1-306-955- 955-
1-306-966- 966-
1-306-978- 978-
1-306-329- 329-
1-306- 1- ;area code strip for Saskatchewan calls
END
The COST statement at the head of the table can take two arguments,
which are the default costs in pennies to apply to domestic and
international calls, respectively.
Each entry in the cost table consists of a partial phone number
followed by a cost in pennies for sending a message to any node whose
phone number begins with that string. As with the dialing table, the
first matching entry is the one that is used. The cost table is used
before the dial table is used, so you should always use the fully
expanded phone numbers, instead of the simplified phone numbers which
the dial table would generate
You may append an additional entry to the end of each line, being the
fee charged to the user for sending messages to nodes within that phone
prefix.
An example follows:
COST 50 250
; This gives a default cost of 50 cents to domestic calls, and
; $2.50 to international calls.
; The following numbers are free from Saskatoon, SK
1-306-242- 00
1-306-244- 00
1-306-373- 00
1-306-374- 00
1-306-382- 00
1-306-384- 00
1-306-652- 00
1-306-654- 00
1-306-664- 00
1-306-665- 00
1-306-931- 00
1-306-933- 00
1-306-934- 00
1-306-955- 00
1-306-966- 00
1-306-978- 00
1-306-329- 00
1-306-585- 25 22 ; One of Reginas prefixes (short distance)
1-306- 25 ; short distance calls, cheaper rates
1-800- 00
1-900- 50
END
As a memory saving gesture, The 'DIALCOST' table has also been added.
It is a combination of the DIAL and COST tables. (However you may
still use the DIAL and COST tables, and even use them in conjunction
with the DIALCOST table. If you use duplicate tables, then the
DIALCOST table will be applied first, then the DIAL or COST table. The
DIAL or COST table will be checked, even if there was a matching entry
in the DIALCOST table.
The DIALCOST table has a header with four values, these values being:
The default domestic cost for messages, the default international cost
for messages, the default domestic dial substitution, and the default
international dial substitution.
Every entry in the DIALCOST table has 3 mandatory parameters, plus a
fourth optional parameter. The parameters, in order are: The partial
phone number for the dial substitution and cost to take effect on, the
replacement dial string to be used, the cost of the message to be sent,
and the fourth optional parameter is the fee charged to the user for a
message to be sent to that node.
An example follows:
DIALCOST 50 250 / 011-
; The following set up local calls from Saskatoon, SK
1-306-242- 242- 00
1-306-244- 244- 00
1-306-373- 373- 00
1-306-374- 374- 00
1-306-382- 382- 00
1-306-384- 384- 00
1-306-652- 652- 00
1-306-654- 654- 00
1-306-664- 664- 00
1-306-665- 665- 00
1-306-931- 931- 00
1-306-933- 933- 00
1-306-934- 934- 00
1-306-955- 955- 00
1-306-966- 966- 00
1-306-978- 978- 00
1-306-329- 329- 00
1-306-585- 1-585- 25 22 ; Regina, known cost call.
1-306- 1- 25
1-800- 1-800- 00
1-900- 1-900- 50
END
*** INDIVIDUAL NODE MODIFICATIONS ***
BAUD [zone:][net/]node baudrate[|modemtype]
Sets the specified nodes baudrate to whatever you specify. The modem
type flag can be set at the same time, by separating it from the
baudrate with a pipe symbol.
BAUD 1:140/26 9600
FLAGS [zone:][net/]node flaglist
Adds the specified flags to the node. (Normally 'CM')
FLAGS 140/26 CM
PHONE [zone:][net/]node phonenumber
Sets the specified nodes phone number (Unless the node number is
unlisted, you may want to see if you can use the SCRIPT command
instead, which doesn't have to be changed if the person ever changes
their phone number.)
PHONE 1:140/26 1-306-384-0836
CALLCOST [zone:][net/]node cost [fee]
Sets the charge to the user for a message to be sent to the listed
node. WARNING: Using this on nodes may cause the nodes to be
unacceptable in the bulk SCRIPT statements. If the node has more than
one node number, then you should probably use a specific COST statement.
The first item 'cost' is used for nodelist processing, the second
entry, or 'fee' is charged to the user for a message to be sent to that
node. If you do not list the fee, then it will default to the same
value as the cost.
CALLCOST 26 1
PASSWORD [zone:][net/]node password
Sets the specified nodes password. No embedded blanks are allowed in
these passwords.
PASSWORD 1:140/26 PASSWORD
SCRIPT [zone:]net/node fromdial todial
This is the second form of the script command. Please note that the
net number IS required, even if it's your own net. (I use the '/' to
determine the difference between the two script lines.)
SCRIPT 140/88 1- "VORTEX.SCR" ; Needs a special script.
Part 5 - Common Questions
Well okay, I made some of 'em up, but you get the idea.
Q: I have to type an awful lot of the same zone number in a multiple
nodelist situation. How can I reduce all these zone numbers?
A: Easy. Just put a bunch of ADDR lines all through the configuration
file. The first number specified on an ADDR line will set the default
zone and net for you. When doing this however, it is important to make
sure that you set the ADDR line correctly at the end of the file.
Q: In V7 mode, can I still generate the FIDOUSER.LST file?
A: You bet. You must specify the VERSION7 and USERLIST keywords in
your config file, but you can't specify the INDEX keyword. You must
use QIDX to build the indexes.
Q: In V7 mode, how can I configure my 2400 baud MNP modem to work with the
modem type byte?
A: A good MAXBAUD line that you could use would be:
MAXBAUD 2400 MNP 9600|1 HST 9600|1 V32 9600|1 V32B 9600|1
Where modem type 0 is a standard non-MNP dial command, and modem type
1 is an MNP dial command. (Note that the baud rate is locked at 9600
for MNP connects.)
Q: In V7 mode, how can I configure my HST-DS to work with older HST's?
A: A good MAXBAUD line that you could use would be:
MAXBAUD 9600 MNP 9600|1 HST 9600|1 V32 9600|1 V32B 9600|2
Where modem type 0 is a no-correction dial command, modem type 1 is
a simple MNP or older HST type dial command (you may wish to split those
two into separate dial strings as well.), and modem type 2 is the
super-enhanced dial command for other V32bis modems.
Q: When generating a FIDOUSER.LST file, it runs out of memory, and says
extending on disk. It then takes a lot longer to compile. Is there
any way to speed it up?
A: Sorta. You can either reduce the memory overhead of the nodelist buffers
(using the BUFFERS keyword.), or you can use a smaller section of the
nodelist, or both.
Q: In V7 mode, when generating the indexes, after a certain point, the drive
light starts to flash a lot more rapidly than previously, what's going on
and can I speed it up?
A: The V7 index files have just hit the memory limit, and they have to be
swapped to disk now. You can reduce the memory overhead of the nodelist
buffers (using the BUFFERS keyword.), you can use a smaller section of the
nodelist, or you can use the QIDX program to build the indexes instead.
(QIDX can still swap to disk, but it will have more memory than QNODE.)
Q: How can I send somebody part of the nodelist, instead of the whole thing?
A: You can use some constructive QNode and batch file techniques to export
the proper things. I'd suggest making a sub-directory to contain the
temporary files, deleting all files in the sub-directory before compiling
the nodelist with QNode (use the batch command
"FOR %F IN (DIR\*.*) DO DEL %F", which doesn't ask for Y/N)
And then run QNode with the following type of export directives:
EXPORT -1: ADMIN.1
EXPORT 1:-17 ADMIN.17
EXPORT 1:140 NET.140
NOTE: You may wish to export the entire region, or even the entire zone
instead. Just remember that you REQUIRE zone and region administration
nodes in any abbreviated nodelist.
And then execute this command after QNode: "COPY/A DIR\*.* SMALLNDE.001"
Your batch file would look like this then:
---cut here---
FOR %%F IN (TEMP\*.*) DO DEL %%F
QNODE
COPY/A TEMP\*.* SMALLNDE.001
---cut here---