Please add to document via Reply.
@database AmiexDoc
Copyright (c) 1993-94 LightSpeed Technologies Inc.
All Rights Reserved
@Remark $VER: (August 02 1994, 01:06:01)
@Remark AmigaGuide database for the /X Documentation
@node MAIN "/X Documentation (c)1993-94 L.Speed Technologies Inc.(August 02 1994, 01:06:01)"
.: C O N T E N T S O F D O C U M E N T A T I O N :.
@{" Introduction " Link Cap01} @{" Copyrights Information " Link Cap02}
@{" Requirements " Link Cap03} @{" Installation of AmiExpress " Link Cap04}
@{" How to install Configs " Link Cap05} @{" How to configurate Startup " Link Cap06}
@{" All ToolTypes Information " Link Cap07} @{" The Standard Documentation " Link Cap08}
@{" Programlogic of AmiExpress " Link Cap09} @{" MainMenu Commands of /X " Link Cap10}
@{" AmiExpress HOST Addresses " Link Cap11} @{" MCI imbedded ControlSequence " Link Cap12}
@{" Notable Features " Link Cap13} @{" Note worthy of Mention " Link Cap14}
@{" QWK Mail Support " Link Cap15} @{" Icon Script Language Support " Link Cap16}
@{" Trouble Shooting " Link Cap17} @{" Future planned Enhancements " Link Cap18}
--------------------------------------------------------
Complete Run-Thru Docs for AmiExpress Professional v4.0
--------------------------------------------------------
Original 3.36 Documentation written by Jens Langner (/X DocWriter).
Original 4.0 Documentation written by The Outlaw (Andy)
Copyright (c) 1993-94 LightSpeed Technologies Inc. All Rights Reserved.
Any copy or illegal distribution of this Documentation is not allowed.
@endnode
@node Cap01 "Introduction & Explanation for /X"
=======================================================================
Ami-Express is a host Bulletin Board software program, allowing
the transfer of data, between host and remote terminals via a
telephone link. ( Obvious to some!! ). This data can be files
uploaded or downloaded from remote (user end) from the BBS
databases. Most Bulletin boards also contain message bases where
you can read and leave electronic mail to other users. It is
possible via some BBS`s to play on-line games, although these are
of a simple nature, they can still be quite entertaining. For
those of you that have been a user, either host or remote, for
some time, will have noticed the major changes that Ami-Express
has undergone. With the future proposed implementations Ami-Express
will soon become comparable to other Major BBS programs found on
Amiga and PC computers.
=======================================================================
@endnode
@node Cap02 "Copyright information"
=======================================================================
If you own a an Illegal (Cracked copy) and you use it, then
consider buying the original. This will not only provide you with
support etc, but will encourage the further development of
Ami-Express.
------------------------------------
AmiExpress, AmiX-Net, Utilities,
docs, and its source code are
(c) Copyright 1993-94 by LightSpeed Technologies Inc.
--------------------------------------------------------------
AmigaGuide, AmigaGuide.info, amigaguide.library, WDisplay,
WDisplay.info,
(c) Copyright 1992 Commodore-Amiga, Inc. All Rights Reserved.
Reproduced and distributed under license from Commodore.
--------------------------------------------------------------
AmiExpress is a commercial product, NOT shareware
If you used it, please buy it!
------------------------------------
=======================================================================
@endnode
@node Cap03 "Requirements"
=======================================================================
To install AmiExpress V4.0 you must have the following things:
Program Location Description
--------- -------- -----------
Express BBS/Utils Bulletin Board System
ACP WBSTARTUP Bulletin Board controller
- The Workbench should be installed to run ACP
- a stack of at least 50000 bytes
- a Amiga Model (500/600/1000/1200/2000/2500/3000/4000)
- the installed Version of Kickstart V2.0 (Soft or Hardware Version)
- at least 2 MB free Space to be able to get uploads
- the installed .INFO Files in the directories.
It is recommend to install AmiExpress on a HardDrive to increase
The Speed of AmiExpress and to have enough space for Uploading
software on the BBS. If you only want to test the AmiExpress Version
than you can install the BBS also on a DiskDrive.
=======================================================================
@endnode
@node Cap04 "How to install AmiExpress on your HardDisk"
=======================================================================
To install AmiExpress V4.0 you must have at least all the
Requirement which were mentioned above. Now lets get going on with the
normal installation of AmiExpress.
Now take your registered LZH file which you downloaded from your
favorite Distribution Board of AmiExpress and decrunched it please
on a Disk or take your Disk on which AmiExpress is already installed.
Now you must know where you want to install AmiExpress on your hard-
drive. To explain the installation of AmiExpress much better it is
recommend that you install the whole AmiExpress into the BBS:
Directory on your HardDrive. If this Directory doesn't exists you
have to make it on your HardDisk.
Now take your AmiExpress disk and take a look an it and you will
see the following things:
-------------------------
S (dir)
libs (dir)
Trashcan (dir)
BBS (dir)
Trashcan.info
-------------------------
Now you must know how many Conferences do you want to install in your
BBS. Now I will explain how you install the new Express V4.0:
- The whole AmiExpress can only be run if the Workbench has been installed
and the ACP has been started from Workbench otherwise express can`t be
installed.
- The whole way of installing AmiExpress has been changed from V2.30 till
V4.0. There is no longer an ACP.STARTUP to configurate your whole BBS.
- Now you need an .INFO files for every configuration. This will be
described in the next section.
=======================================================================
@endnode
@node Cap05 "The Way to install the Configuration Files"
=======================================================================
The .INFO Files now take control over the express system. The
whole ACP.STARTUP has now been changed to single INFO Files where you
put in the configuration. First of all make sure you installed the
workbench, otherwise you can`t install the AmiExpress V4.0 version.
For further information look at the section which describes all info
files for installing AmiExpress. But first you must decide how many nodes
you want to install to configurate your express the right way. Since
version 3.60 you may have up to 32 nodes.
We highly suggest that you store AmiExpress and all associated
programs in a volume called BBS: this simplifies finding
any problems you may have. Installing AmiExpress is fairly complicated
so please be patient, even those who have run earlier version of
AmiExpress should notice a lot of setup changes, Therefore there
will not be any quick setup instructions.
=======================================================================
@endnode
@node Cap06 "How to install Express in your Startup"
=======================================================================
In order to get AmiExpress work perfectly you have to add the following
things at your User-StartUp or Startup-Sequence file in the S:
directory:
-----cut here-----------
ASSIGN BBS: SYS:BBS
PATH BBS:UTILS ADD
-----cut here-----------
NOTE*
Since version 3.38 of AmiExpress you now have the ability to make
AmiExpress resident. Doing this should speed up program execution
and also conserve memory.
Making AmiExpress resident:
1. change all nodestart tooltypes in the NODE icons to reflect the
following:
NODESTART=express
2. Update your s:User-StartUp script by adding the following after
your BBS Assignment:
---------cut here-----------
RESIDENT EXPRESS BBS:EXPRESS
---------cut here-----------
Now to start the ACP.SERVER you should copy the ACP.CTRL & INFO FILE
into the WBSTARTUP directory at your HardDisk directory.
You can also start ACP from a shell but the INFO file MUST be in the
same directory as ACP to have the correct settings.
The above mentioned ASSIGN statement indicates that you have your
BBS installed in a directory called BBS on the system drive.
Once all of this is complete you should be able to reset your system.
NOTE: You should have a BBS:UTILS directory. Use this directory to
~~~~ put all AmiExpress required Utils.
=======================================================================
@endnode
@node Cap07 "ToolTypes in ICONS to run AmiExpress..."
=======================================================================
To run AmiExpress you need a lot of ICONS contained in different
directories. These ICONS contain much of information to run /X.
This Information are stored as TOOLTYPES. Now I will list for you
all needed ICONS and the TOOLTYPES for it. To change the configuration
of your BBS you should click on the icon and go with the right
mousebutton to the workbench menu to view the information of the
ICON. There you will find the TOOLTYPES to configurate your personal
AmiExpress. For more information look at the example icons on disk.
@{" ACP.INFO ICON " Link Cap0701} @{" NODE(x).INFO ICON " Link Cap0702}
@{" <CONF>.INFO ICON " Link Cap0703} @{" CONFCONFIG.INFO ICON " Link Cap0704}
@{" DRIVES.INFO ICON " Link Cap0705} @{" SCREENTYPES.INFO ICON " Link Cap0706}
@{" COMPUTERLIST.INFO ICON " Link Cap0707} @{" NAMESNOTALLOWED.INFO ICON " Link Cap0708}
@{" PROTOCOLS <Directory> " Link Cap0709} @{" ACCESS.INFO ICON " Link Cap0710}
@{" FCHECK <Directory> " Link Cap0711} @{" NODE(x) <Directory> " Link Cap0712}
@{" COMMANDS <Directory> " Link Cap0713} @{" STORAGE <Directory> " Link Cap0714}
=======================================================================
@endnode
@node Cap0701 "DH0:WBSTARTUP/ACP.INFO ICON ToolTypes information"
=======================================================================
ACP.INFO - This ICON only represents the definition to
~~~~~~~~ ACP, and required data for the BBS to operate
and locate the other definition files.
ACPFONT= - Tell ACP what font you would like to have.
IE: ACPFONT=cleanibm.font
BACKUP.<numb>= - tells ACP to make backup from a specified file. A
history of 5 backups will be made. <numb> is the
number occurrence of this tooltype.
BBS_NAME= <name> - Specifies the name of your BBS.
BBS_STACK= <stack> - Specifies the STACK number of your System.
BBS_LOCATION= <dir>- Specifies the location of all BBS main files.
This directory will be the directory where the
Node(x) directories should be. Along with all
of the .DEF files.
If the location is a directory, then the directory
name must have trailing '/' when specified in the
tooltype.
BUTTON_NAME.<numb>=- defines the name of the specified button, the
<numb> can range from 1-15.
BUTTON_COMMAND.<numb>
- defines the command to be executed when this
button is selected, <numb> can range from 1-15.
BBS_GEOGRAPHIC=<geo> Specifies the Geographic Location of Your BBS
this will be mentioned in the LOGON Sequence...
CREDIT_BY_KBYTES - This allows the sysop to make xpress keep track of
credits, (files) by Kbytes instead of Bytes.
ICONFIED - Will toggle ACP to start ICONFIED or not
ICONIFY.LEFTEDGE= - tells ACP the number of pixels from the left edge
of the screen to place the ICONFIED window.
ICONIFY.TOPEDGE= - tells ACP the number of pixels from the top edge
of the screen to place the ICONFIED window.
LONG_WHO - This tooltype will provide a separator between
each node listed in the WHO command.
MULTICOM_PORT - If this tooltype is placed the MULTICOM PORT
of AmiExpress is turned on for multinode systems.
NEW_ACCOUNTS=APPEND- This tells ACP to ADD new User to the End of
the Databases.
NODE<x>_LOCATION= - This lets you specify the location of a given node
NODEx_NAME=<string>- This lets you specify a name for your node, the
default is the same as the BBS_NAME
NODEx_SYSOP=<string> This lets you have a different SYSOP per node, this
should effect comment to SYSOP and paging the SYSOP.
The default is BBS_SYSOP.
NODES=1 - Tells ACP how many Nodes you have
NUTTON_NAME.<numb>=- defines the name of the specified nutton, the
<numb> can range from 1-15.
NUTTON_COMMAND.<numb>
- defines the command to be executed when this
nutton is selected, <numb> can range from 1-15.
All NUTTONS will be passed the selected NODE
number as a command line argument.
PRIORITY= <numb> - Specifies the taskpriority for ACP to run.
RESTRICT.<numb>= - tells ACP to place a filenote on the specified
file. This prevents users from viewing or
downloading the restricted files.
SHORT_DONOTMOVE - if this tooltype is placed, then if the '/X' gadget
is selected your ACP window will not move.
SYSOP_NAME= <name> - Specifies your name.
=======================================================================
@endnode
@node Cap0702 "BBS:Node(x).INFO ICONS ToolTypes information"
=======================================================================
NODE(x).INFO - This Icon will specify some information about
~~~~~~~~~~~~ how to install the Node in AmiExpress (x) = Nodenumber
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CALLERS_LOG - tells /X to record all events to a file called
CallersLog in the node directory.
CAPITOL_FILES - tells /X to make all upload files names UPPER_CASE
letters.
CHAT_ON - tells /X that the node should have the CHAT FLAG
ON, when the node is started.
COPYBUFFER= <numb> - this allows you to specify the maximum amount
of memory that you wish express to use when
copying files from one partition to another.
If you do not specify this, then express will
try and allocate memory enough to copy the file
with 1 WRITE. Of course,if there is not enough memory,
it will decrement by 8Kblocks, until it can copy it,
regardless of the COPYBUFFER.
ie: COPYBUFFER=100000
^---------100K copy buffer
CONF_DB=<string> - This tooltype will specify the filename
(not filepath) to use when loading msgbase pointers
for a given node. The default is CONF.DB
DEBUG_LOG - This turns on the DEBUGGING Log for Express
DEF_SCREENS - DEF_SCREENS tells AmiExpress to use non security
screens before looking for security screens. ie:
BULL30.TXT
BULL.TXT
In the above case, express would start it's search
for screens with BULL.TXT, this can be a considerable
time savings if the majority of your screens are not
security oriented. Under this scheme, BULL0.TXT
is now a valid security designator. AmiExpress searches
for security oriented text in increments of 5 based
on the user's password. So if a user has an access
level of 255, and there is only a BULL30.TXT,
then express would have to check for the existence of
88 screens prior to locking in on BULL30.TXT. By
default express does this now. We are just saying, if
if you do not have security text or most of your
texts aren't security oriented, then we recommend
using the DEF_SCREENS.
NOTE: if you use the DEF_SCREENS option, but you have
security oriented menus to display, then instead of
having:
BULL30.TXT
BULL.TXT
use:
BULL30.TXT
BULL0.TXT
and simply do not have a BULL.TXT for that bulletin.
DISABLE_QUICK_LOGONS
- Allows you to prevent a user from using the
skipping of the Logon/off texts in your BBS.
DOOR_LOG - tells /X to record the start and end time for
Module use.
EXPFONT= - tells Express what font you would like to have.
IE: EXPFONT=cleanibm.font
FILESNOTALLOWED=<pathname>
- <pathname> is a full path and file name to a ASCII
file which lists filenames you do not wish uploaded
to your system.
FREE_RESUMING - This tells Express to allow the FREE RESUMING of
uploaded files for ALL Users in the BBS.
HDTRANSBUFFER= <buffers>
- HDTRANSBUFFER allows you to change the buffer size
from serial to HardDisk. This option is a better
alternative than using a RAMPEN because it works on a
file by file basis, whereas the RAMPEN method has to
wait until all uploads are complete.
You may specify as many buffers as you like. The
number of buffers default to 8 if this tooltype is not
used. Here is a formula for determining how much
memory will be allocated for transfers when the node
is started:
((buffers+2)*1024)*2
^--- This is required due to
the double buffering.
ie:
HDTRANSBUFFER=20 would require 45,056 bytes of memory
1. ((20+2)*1024)*2
2. (22*1024)*2
3. (22528)*2
4. 45056
IDLENODE - tells ACP not to start the node and wait for click.
KEEP_UPLOAD_CREDIT= <numb>
- specifies the user which upload credit will be
kept if he downloaded something.
Can have 1 of 2 values '0' or '1'.
There meaning is as follows:
'0' = Do not penalize a user 'time' for uploads.
'1' = Do not penalize a user 'time' for uploads
and give them an additional %50 time
increase to the remaining time on-line.
MAX_MSG_QUE - this allows you to specify the maximum number of
messages (olm/chat) that can be queued to that node.
Anything that is sent after the maximum will be
ignored. If this tooltype is not specified then
express defaults to 5.
NAME_PROMPT= - This tooltype lets you specify the prompt to use
for the LOGON procedure.
NEWUSER_PASSWORD= - tells ACP that a user is required to enter the
specified password prior to join as a new user.
NODESTART= - tells ACP where Express is located to start node.
NO_TIMEOUT - tells /X to disable the keyboard TIMEOUT option.
NO_MCI_MSG - tells /X to disable the ability to use MCI
commands in the message base.
NO_WILDCARD_EXPANSION
- This tells Express to not allow the using of
WILDCARD expansions (*) in the specified NODE.
PRIORITY= <numb> - tells ACP the priority for this Node in respects
to the system.
PHONECHECK - If this tooltype is activated, express will ask
for the 4 last digits of the specified user
phonenumber at every LOGON.
PLAYPEN= <dir> - tells ACP that this node is going to use a SYSOP
directory for initial uploads to go into.
!! USING RAM: FOR THIS IS HIGHLY DISCOURAGED !!
You must create this directory for running.
QUIETNODE - tells ACP to make this node quiet to the WHO
command, and some 3rd party modules.
RAMWORK - This tells the Node not to check for FREE SPACE
like when wanting to use RAM: for Playpen.
RINGCOUNT=<rings> - This tooltype will instruct the node, to what the
specified number of rings to come across the modem
sequentially before answering the modem.
REMOTE_PASSWORD= - tells ACP that a user is required to enter the
specified password prior to gaining access to
SHELL.
SCREENS=<location> - This will tell express to use one common area
for locating .TXT files, if you use this option for
conferences, then you will need to have a
bulletins drawer in that directory as well so the
bulletins can be found.
SCREENPENS - this tooltype is primarily there for testing the
color configurations of the upload file requestor and
overall screen color appearances, It is hard to
explain how this works, but we have 12 color pens we
can configure that make up the look of the screen,
the SYSOP can define what those 12 colors will be,
so here is an example:
SCREENPENS=101010110110
0 = BLACK
1 = WHITE
2 = GREEN
3 = YELLOW
4 = BLUE
5 = MAGENTA
6 = CYAN
7 = RED
Now for a 1 bitplane screen (2 colors) you will use
only 1 and 0, so you experiment with this, and see
what you can come up with.
SENTBY_FILES - tells /X that you wish to have user`s handle
placed at the end of his/her files descriptions.
STEALTH_MODE - This will have express ask for the system password
before the connect message and BBS name.
START_LOG - tells /X to record the start & end times of the
NODE.
SYSTEM_PASSWORD= - tells ACP that this node is going to require users
to enter a password before allowing access to the
system.
SYS_PWRD_PROMPT= - This tooltype lets you specify the prompt to use
for the system password prompt. default is >:
SYSOP_CHAT_COLOR= - tells /X which ANSI color to use when display the
SYSOPS Chat. (Range 31-37)
TRAPDOOR - tells ACP that this node is going to run Express
indirectly via another program. If this option is
used then you should specify the program to be run
externally in the NODESTART= tooltype.
TRAP_SERIAL - This will Trap the A2232 Error Messages
UD_LOG - tells /X to record all uploads & downloads to a
file called UDLOG in the node directory.
USER_CHAT_COLOR= - tells /X which ANSI color to use when displaying
the User`s Chat. (Range 31-37)
USERDATA_NAME=<path>-This lets you specify an alternate location for
USERDATA.
USERKEYS_NAME=<path>-This lets you specify an alternate location for
your USERKEYS.
USERMISC_NAME=<path>-This lets you specify an alternate location for
your USER.MISC.
USERNUMBER_LOGIN - tells acp to allow a user to login with his account
number instead of his name/handle.
VIEW_PASSWORD - This tooltype will allow you to see what users are
typing in for there passwords and new user
passwords.
=======================================================================
@endnode
@node Cap0703 "BBS:<CONF>.INFO ICON ToolTypes information"
=======================================================================
<CONF>.INFO - This Icon will specify some information about
~~~~~~~~~~~ how to install the Conference. <CONF> = ConfName
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CONFDB_SHARED=<confnum>
- This tooltype allows you to tell a conference to
use another conference's CONF.DB file for storing
and retrieving user's file credits, and ratios.
NOTE: ACS.CONFERENCE_ACCOUNTING is needed for this
to take effect.
CUSTOM - This will tell express that THIS conference is
using AmiX-Net Mail.
DLPATH.<numb>=<str>- Required for all conferences which allow downloads
and file viewing. Specifies the directory of files
available for downloading. <numb> is the number
occurrence of the DLPATH tooltype.
If the download path is a directory then the
directory name in tooltype must have a
trailing '/'.
FREEDOWNLOADS - Tell /X that the current conference allows free
downloads.
FORWARDMAIL= <str> - Redirects Comments to the SYSOP to another user.
FORCE_NEWSCAN - This will force your users to have a New Mail scan
whether they have selected it or not.
INTERNETNAME - This will tell Express what INTERNETNAME to use for
the current conference mail. If this tooltype is not
set, then express will default to login name. This
is optional.
MENU_PROMPT= - This tooltype lets you specify the MenuPrompt to
use in this Conference.
NDIRS= <numb> - Required for all conferences which allow file
transfers. Specifies the number of file catalogs
for the conference.
NO_NEWSCAN - This will Force No New Mail scan whether a users has
turned it off or not.
REALNAME - This will turn on the realname option in the current
conference. This is optional.
SHOW_NEW_FILES - If used in the CONF icon, will act like the above
force command for messages.
IE: Force your users to get a new file scan whether
they have chosen it or not.
ULPATH.<numb>=<str>- Specifies an overflow directory for uploads to goto
, this is useful in instances where the default
upload directory does not room for anymore files.
<numb> is the nth occurrence of the ULPATH tooltype.
If the upload path is a directory then the
directory name in the tooltype must have a
trailing '/'.
=======================================================================
@endnode
@node Cap0704 "BBS:CONFCONFIG.INFO ICON ToolTypes information"
=======================================================================
CONFCONFIG.INFO - This ICON is required to be in the BBS directory
~~~~~~~~~~~~~~~ This defines your conferences.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NCONFS= <numb> - tells /X the number of conferences your BBS has.
NAME.<numb>=<name> - tells /X the name of your conferences.
LOCATION.<numb>= - tells /X the location of conference (DIR).
RELATIVE_CONFERENCES
- tells /X to only show user accessible confs VS.
showing all conferences on the system.
=======================================================================
@endnode
@node Cap0705 "BBS:DRIVES.INFO ICON ToolTypes information"
=======================================================================
DRIVES.INFO - This ICON should be placed in the BBS: Directory
~~~~~~~~~~~ Here you place in your Upload directories.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
DRIVE.<numb>=<name>- tells /X which drives to use in determining free
space for uploads.
IE: DRIVE.1=DH0:
DRIVE.2=DH1:
=======================================================================
@endnode
@node Cap0706 "BBS:SCREENTYPES.INFO ICON ToolTypes information"
=======================================================================
SCREENTYPES.INFO - This ICON should be placed in the BBS: Directory
~~~~~~~~~~~~~~~~ Here you can put in information for different
ScreenTypes like different languages.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TYPE.<numb>=<EXT> - This specifies the Extension for the ScreenTypes
like "TXT","GER" & "ENG". you can make your own.
TITLE.<numb>=<name>- This specifies the name of the ScreenTypes you want
to have like "AMIGA ANSI","GERMAN" & "ENGLISH".
You can specify your own Title.
=======================================================================
@endnode
@node Cap0707 "BBS:COMPUTERLIST.INFO ICON ToolTypes information"
=======================================================================
COMPUTERLIST.INFO - This ICON tooltypes specifies the ComputerTypes
~~~~~~~~~~~~~~~~~ which the Users can select.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
COMPUTER.NUM=<numb> - Specifies the total number of ComputerTypes you
have in your BBS System.
COMPUTER.<numb>= - Specifies the Computer Description the users can
choose from there own USERDATA.
=======================================================================
@endnode
@node Cap0708 "BBS:NAMESNOTALLOWED.INFO ICON ToolTypes information"
=======================================================================
NAMESNOTALLOWED.INFO - This ICON tooltype specifies UserNames you
~~~~~~~~~~~~~~~~~~~~ don`t want to use in your BBS System. In this
tooltype Names like: ALL,EALL,SYSOP should be there,
to prevent user to log in the BBS with these Names
This ICON should be placed in the BBS: directory.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NAME.<numb>= - Specifies the Name you want to prevent to be used
in your BBS System.
=======================================================================
@endnode
@node Cap0709 "BBS:PROTOCOLS Directory information"
=======================================================================
Protocols.INFO - This ICON only represents a Directory. This
~~~~~~~~~~~~~~ Directory is required to be within the BBS:
directory.
ABOUT: This directory will contain XPR definitions for AmiExpress.
IMPORTANT NOTE: - You must have a door called XPR, and have it
located in the BBS:COMMANDS/SYSCMD dir for the
Xpr's to work properly.
The following list are ICONS which should be placed in this directory:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@{" XPRTypes.INFO ICON " Link Cap070901} @{" <XFERlib>.INFO ICON " Link Cap070902}
@{" Hydra.INFO ICON " Link Cap070903}
=======================================================================
@endnode
@node Cap070901 "BBS:PROTOCOLS/XPRTypes.INFO ICON ToolTypes Info"
=======================================================================
XPRTypes.INFO - This ICON tooltypes specify the XFER Protocols
~~~~~~~~~~~~~ you want to be used for your BBS System. This
ICON should be placed in the BBS:Protocols/
directory.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TITLE.<numb>=<title> - Specifies the Title for the XFER Lib to be
displayed in the BBS
LIBRARY.<numb>=<library | INTERNAL>
- Specifies the Library you want to use for the
<numb> Title in your BBS. Use "INTERNAL" for
the normal AmiExpress Internal Protocol.
=======================================================================
@endnode
@node Cap070902 "BBS:PROTOCOLS/<XFERLib>.INFO ICON ToolTypes Info"
=======================================================================
<XFERLib>.INFO - This ICON tooltypes specify the options for
~~~~~~~~~~~~~~ for each XFERLibrary you use in your BBS system.
e.g.: XPRZmodem.INFO = xprzmodem.library
XPRYmodem.INFO = xprymodem.library
This ICON should be placed in the BBS:Protocols/
directory.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
OPTIONS=<opt> - Allowed you to specify the Options for the
XFERLibraries.
e.g.: OPTIONS=TN,AY,OR,KY,SN,RN,DN,F0,B32
AE_BATCH - All batch protocol icons must contain the tooltype
AE_BATCH instead of Batch.
=======================================================================
@endnode
@node Cap070903 "BBS:PROTOCOLS/<Hydra>.INFO ICON ToolTypes Info"
=======================================================================
<Hydra>.INFO - This ICON tooltype specifies the options for
~~~~~~~~~~~~ the new hydra protocol. To have this option work
in express you must:
1st: Have the aehydra file in the Doors:
directory. (The aehydra library is built
into this file, so no library is needed
in the Libs: dir.
2nd: You must have the correct settings in the
in the Hydra.Info icon.
e.g. OPTIONS=AEHYDRA
TXWINDOW=0
RXWINDOW=0
STACK=4096
YOU DO NOT NEED AE_BATCH IN THIS ICON.
This ICON should be placed in the BBS:Protocols/
directory.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
AE_BATCH - All batch protocol icons must contain the tooltype
AE_BATCH instead of Batch.
OPTIONS=<opt> - Allowed you to specify the Options for the
XFERLibraries.
e.g.: OPTIONS=TN,AY,OR,KY,SN,RN,DN,F0,B32
=======================================================================
@endnode
@node Cap0710 "BBS:ACCESS.INFO ICON ToolTypes Information"
=======================================================================
ACCESS.INFO - This ICON tooltypes specify the access defaults
~~~~~~~~~~~ assigned to a users account when he/she logs on.
%References: ACS.DEF.INFO ICON
These defaults can be used by using the
ACS.OVERRIDE_DEFAULTS Option.
The following list are ICONS which should be placed in this directory
to have ACCESS Levels,AREA Names & PRESETS for the User Accounts:
@{" ACS.<level>.INFO ICONS " Link Cap071001} @{" AREA.<AXSName>.INFO ICONS " Link Cap071002}
@{" PRESET.<x>.INFO ICONS " Link Cap071003}
=======================================================================
@endnode
@node Cap071001 "BBS:ACCESS/ACS.<level>.INFO ICON ToolTypes Info"
=======================================================================
ACS.<level>.INFO - This ICON Must be placed in the ACCESS directory
<username>.INFO and it can be the USERNAME or the Accesslevel.
~~~~~~~~~~~~~~~~ i.e.: ACS.010, ACS.200, ACS.255, BYTEMASTER, USER
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ACS.ACCOUNT_EDITING - Gives Access to Account Editing.
ACS.ATTACH_FILE - Allows user to make a file attached to messages.
ACS.BREAK_CHAT - Allows user to break the sysopchat with CTRL-C.
ACS.CONFFLAGS - Allows user to use the CF command.
ACS.CONFERENCE_ACCOUNTING
- This will turn on the Conference Account for a
User. So now you can define a Ratio for each
Conference to each User.
ACS.CREDIT_ACCESS - Allows a user (co-sysop/sysop) to view CREDIT
ACCOUNTS as long as they have ACCOUNT EDITING access.
ACS.COMMENT_TO_SYSOP - Allows user to leave comment to SYSOP.
ACS.DUPE_FILECHECK - This will turn on the DUPE FILECHECKING after
the upload for the specified user.
ACS.DOWNLOAD - Allows user to download files.
ACS.DISPLAY_USER_STATS
- Allows user to view his/her status on the system.
ACS.DELETE_MESSAGE - Allows user to delete Messages.
ACS.EDIT_DIRS - Allows user to Edit catalogs of Files.
ACS.EDIT_FILES - Allows user to Edit Files in your BBS.
ACS.EDIT_USER_INFO - Allows a user to edit his/her account.
ACS.EDIT_USER_NAME - Allows user to change his/her handle.
ACS.EDIT_USER_LOCATION
- Allows user to change his/her location.
ACS.EDIT_PHONE_NUMBER- Allows user to change his/her phone number.
ACS.EDIT_PASSWORD - Allows user to change his/her password.
ACS.ENTER_MESSAGE - Allows user to enter messages.
ACS.EALL_MESSAGES - Allows user to enter EMAIL to All user so that they
are forced to read them.
ACS.FULL_EDIT - Allows User to use the FULL-SCREEN-EDITOR if
one is located in the SYSCMD <dir>.
ACS.FILE_LISTINGS - Allows to view catalog of available files.
ACS.FILE_EXPANSION - Allows user to wildcard files.
ACS.FREE_RESUMING - Allows user the free resuming of partuploads.
ACS.HIDE_FILES - Prevents the user from seeing which files
are being transferred via the WHO command and
NEWCHAT (who).
ACS.JOIN_CONFERENCE - Allows user to Join a Conference.
ACS.LIST_NODES - Allows user to view the On-line Nodes.
ACS.MAX_PAGES=<numb> - This will set the maximum number of pages allowed
per session. If a user goes above this limit,
then page sysop will be translated to Comment to
Sysop.
ACS.MCI_MESSAGE - Allows user to write MCI Messages in the BBS.
ACS.MODIFY_VOTE - Allows the Sysop access to change or modify the
information in the voting booth.
ACS.NEW_FILES_SINCE - Allows user to list recent catalog entries.
ACS.OVERRIDE_DEFAULTS- OverRide access defined in the ACCESS Icon
tooltypes above.
ACS.OLM - Allows users to send OLM, (Internal ONLINE Message
sender), messages to ALL Nodes.
ACS.OVERRIDE_CHAT - Allows user to OverRide the /X chat flag and
successfully page the SYSOP.
ACS.OVERRIDE_TIMES - Allows user to bypass the time restrictions
placed on a Node.
ACS.PAGE_SYSOP - Allows user to page sysop.
If the sysop page flag on express is turned off
the user will be notified that you are not
available.
ACS.PUB_MSGFILES - Allows user to upload a file into the MSGBASE
and to make it automatically ATTACHED to (ALL)
Users with "X"Option.
ACS.PRI_MSGFILES - Allows user to upload a file into the MSGBASE
and to make it automatically ATTACHED to another
user with "X" Option.
ACS.QUIET_NODE - Allows user to make himself invisible from other
nodes by the "Q" command in Main Menu.
ACS.READ_BULLETINS - Allows user to read the normal Bulletins.
ACS.READ_MESSAGE - Allows user to read messages.
ACS.RELOGON - Allows user to make a RELOGON by pressing "RL"
in the Main Menu Prompt.
ACS.REMOTE_SHELL - Allows user to gain access to the Remote Shell.
ACS.SYSOP_READ - Allows user to read mail, regardless of whose it
is.
ACS.SHOW_PAYMENTS - Allows user to be able to see when there credit
account will expire via the 'S' command.
ACS.SYSOP_VIEW - Allows user to view Files like a SYSOP.
ACS.SYSOP_DOWNLOAD - Allows user to make a SYSOPDOWNLOAD of any path.
ACS.SYSOP_COMMANDS - Allows user to make normal SYSOP Commands.
ACS.ULSTATS - Allows user to view number of new uploads since
the last SYSOP LOGON.
ACS.UPLOAD - Allows user to Upload files.
ACS.VOTE - Allows user to vote in the voting booth.
ACS.WHO_IS_ONLINE - Allows user to view Nodes with "WHO" command.
ACS.VIEW_A_FILE - Allows user to view downloadable text files.
ACS.XPR_RECEIVE - Allows user to receive file with XPR Libraries.
ACS.XPR_SEND - Allows user to send files with XPR Libraries.
ACS.ZIPPY_TEXT_SEARCH- Allows user to search the catalog for key items
with the ONLINE search features of /X.
ACS.ZOOM_MAIL - Allows user to Zoom Mailing from some message.
=======================================================================
@endnode
@node Cap071002 "BBS:ACCESS/AREA.<AXSName>.INFO ToolTypes Info"
=======================================================================
AREA.<AXSName>.INFO - This ICON should be placed in the ACCESS dir.
~~~~~~~~~~~~~~~~~~~ It defines the Access a user has to Conferences.
The same name should be placed in the ACCOUNT
EDITING at "AREA NAME"
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CONF.<x> - Allows a user with that AREA NAME to join the
specified conference you inserted at <x>
=======================================================================
@endnode
@node Cap071003 "BBS:ACCESS/PRESET.<x>.INFO ToolTypes Info"
=======================================================================
PRESET.<x>.INFO - Allows you to choose PRESETS for the Account
~~~~~~~~~~~~~~~ editing over tooltypes. This ICON should be
<x> = 1 - 8 placed in the ACCESS directory.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PRESET.AREA=<name> - Specifies the AREANAME for the UserAccess that
the user has access to.
PRESET.ACCESS=<numb> - Specifies the Access for the Preset you want to
set.
PRESET.CONFRJOIN= - Specifies the Conference when a User is selected
with this PRESET. Then he will automatically
join this CONF in his next LOGON.
PRESET.DAILY_BYTE_LIMIT=
- Specifies the Daily Byte Limit for the Preset you
want to set.
PRESET.RATIO_TYPE= - Specifies the RatioType for the Preset you want
to set.
PRESET.RATIO=<numb> - Specifies the Ratio you want to have for the
preset.
PRESET.TIME_LIMIT= - Specifies the Time Limit for the Preset you want
to set.
=======================================================================
@endnode
@node Cap0711 "BBS:FCHECK Directory Information"
=======================================================================
FCHECK.INFO - This ICON only represents a Directory. This
~~~~~~~~~~~ Directory is required to be within the BBS:
directory.
ABOUT: This directory will contain Checker definitions for AmiExpress.
The following list are ICONS which should be placed in this directory:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@{" <EXTENSION>.INFO ICONS " Link Cap071101}
=======================================================================
@endnode
@node Cap071101 "BBS:FCHECK/<EXT>.INFO ICON ToolTypes Info"
=======================================================================
<EXT>.INFO - These ICONS are used for the FCHECK in Express
~~~~~~~~~~ and should be placed in the directory BBS:FCHECK
<EXT> = The Extension of Files like "DMS", "WRP"
& "LHA"
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CHECKER=<comp.Path> - Specifies the complete Path to the FileChecker
you want to have for the extension.
ERROR.<numb>=<name> - Specifies the Error Message if a file is corrupt
and have to move to the Hold Directory. You
can specify unlimited Error Messages by changing
the <numb>.
OPTIONS=<options> - Specifies the option you want to start with the
FileChecker. This Will be put after the executing
of FileChecker.
PRIORITY=<numb> - Here you can specify the Taskpriority on which
the FileChecker will be run.
SCRIPT=<script path> - This will tell express to run that script after
it finishes testing the file. Once that is
finished then express will go ahead and move the
file to where ever.
NOTE: express will pass the file name as the
~~~~ first command line argument to the SCRIPT.
STACK=<numb> - Here you can specify the Stack which you want to
have for the checker.
=======================================================================
@endnode
@node Cap0712 "BBS:NODE(x) Directory Information"
=======================================================================
NODE<x>.INFO - This ICON represents a Directory. This
~~~~~~~~~~~~ Directory is required to be within the BBS:
directory.
The following list are ICONS which should be placed in this directory:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@{" CONNECT.DEF.INFO ICON " Link Cap071201} @{" WINDOW.DEF.INFO ICON " Link Cap071202}
@{" TIMES.DEF.INFO ICON " Link Cap071203} @{" NRAMS <Directory> " Link Cap071204}
@{" SERIAL <Directory> " Link Cap071205} @{" MODEM <Directory> " Link Cap071206}
=======================================================================
@endnode
@node Cap071201 "BBS:NODE<x>/CONNECT.DEF.INFO ICON Info"
=======================================================================
CONNECT.DEF.INFO - This ICON should be placed in the NODE<x>
~~~~~~~~~~~~~~~~ directory and specifies special Connect Messages
to change the BaudRate.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
<connectmsg>=<baud> - if the Connect Message is the same the BaudRate
will be changed to the specifies one.
example:
CONNECT 2400/ARQ/MNP/MNP5=9600
- if the Connect message is the above one the
hardware BaudRate will be changed to 9600 baud.
NOTE: This tooltype is not mandatory. It was basically
introduced to allow older modems to show correct
connect strings.
i.e.:
Older HST modems even though connected at
14400, only showed a connect string that was
displayed through the modem hardware as 9600.
=======================================================================
@endnode
@node Cap071202 "BBS:NODE<x>/WINDOW.DEF.INFO ICON Info"
=======================================================================
WINDOW.DEF.INFO - This ICON should be placed in the NODE<x>
~~~~~~~~~~~~~~~ directory and specifies the Window Prefs of the
node.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
WINDOW.NUM_COLORS= - Specifies the Number of Colors you want to have
for the Node Window.
WINDOW.INTERLACE= - Specifies that you want to have this window in
HighRes-Interlace Mode.
WINDOW.LEFTEDGE= - Specifies the beginning of the Node Window in the
Left Edge.
WINDOW.TOPEDGE= - Specifies the beginning of the Node Window in the
Top Edge.
WINDOW.WIDTH=<numb> - Specifies the WIDTH of the Node Window.
WINDOW.HEIGHT=<numb> - Specifies the HEIGHT of the Node Window.
WINDOW.STATBAR - This turns on the STATBAR in the Node Window
WINDOW.ICONIFIED - Specifies if you want to have the Node Window
ICONIFIED if you start the ACP.CTRL.
WINDOW.TO_FRONT - Specifies if you want the Node Window
to pop up automatically when starting ACP.
=======================================================================
@endnode
@node Cap071203 "BBS:NODE<x>/TIMES.DEF.INFO ICON Info"
=======================================================================
TIMES.DEF.INFO - This ICON should be placed in the NODE<x>
~~~~~~~~~~~~~~ directory and specifies the special Times in
which specifies BaudRate can call or not.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
START.<baud>=<time> - Specifies the Start Time of the BaudRate
END.<baud>=<time> - Specifies the End Time of the BaudRate
- for maximal calling time place in:
START.<baud>=0000
END.<baud>=2359
or choose the OVERRIDE_TIMES
=======================================================================
@endnode
@node Cap071204 "BBS:NODE<x>/NRAMS Directory Info"
=======================================================================
NRAMS.INFO - This ICON only represents a Directory. This
~~~~~~~~~~ Directory is required to be within the
BBS:NODE<x>/ directory.
ABOUT: This directory will contain NRAMS definitions for the Modem.
The following list are ICONS which should be placed in this directory:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@{" <name>.DEF.INFO ICON " Link Cap07120401}
=======================================================================
@endnode
@node Cap07120401 "BBS:NODE<x>/NRAMS/<name>.DEF.INFO ICON Info"
=======================================================================
<name>.DEF.INFO - This ICON should be placed in the NODE<x>/NRAMS
~~~~~~~~~~~~~~~ directory and specifies the NRAM Prefs you want
to have for your ACP.CTRL button "Set NRAMS"
- You can <name> it with every name you want
ACP will look for the #?.DEF.INFO file in the
NRAMS dir. NO SPECIAL NAME NEEDED.
- The NRAMS will be activated if you press the
"Set NRAMS" button in ACP SERVER.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NRAM.<numb>=<sets> - Specifies the NRAM Settings of your Modem.
You can have unlimited NRAM settings, just
change the <numb>.
=======================================================================
@endnode
@node Cap071205 "BBS:NODE<x>/SERIAL Directory Info"
=======================================================================
SERIAL.INFO - This ICON only represents a Directory. This
~~~~~~~~~~~ Directory is required to be within the
BBS:NODE<x>/ directory.
ABOUT: This directory will contain SERIAL definitions for AmiExpress.
The following list are ICONS which should be placed in this directory:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@{" <name>.DEF.INFO ICON " Link Cap07120501}
=======================================================================
@endnode
@node Cap07120501 "BBS:NODE<x>/SERIAL/<name>.DEF.INFO ICON Info"
=======================================================================
<name>.DEF.INFO - This ICON should be placed in the NODE<x>/SERIAL
~~~~~~~~~~~~~~~ directory and specifies the SERIAL Prefs of
your Computer equipment.
- You can <name> it with every name you want
ACP will look for the #?.DEF.INFO file in the
SERIAL directory. NO SPECIAL NAME NEEDED.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
SERIAL.UNIT=<unit> - Specifies the UNIT on your MULTISERIALCARD.
SERIAL.BAUD=<baud> - Specifies the INIT BaudRate for your EXPRESS.
SERIAL.DRIVER=<name> - Specifies the SERIALDRIVER for your EXPRESS
i.e.: SERIAL.DEVICE.
SERIAL.A2232_PATCH - Turns the A2232 Multi user serial card Patch on.
SERIAL.NO_PURGELINE - This command will cause express not to clear the
serial port after a modem reset command is sent
through the port. Doubt many would use this.
SERIAL.REPURGE - This command will process the any data in the
serial port after a modem reset, normally the
port is just cleared, but on A2232 cards, it
appears that the card will not accept a CLEAR
port command so you need SERIAL.REPURGE to
process the left over data.
SERIAL.LOGOFF_RESET - This command will cause the modem to be reset
before each call and after each call, this
routine used to be default in the 1.x series of
express. So if you are having problems at logoff
you may wish to try this.
SERIAL.TRUE_RESET - This command will force express to Reset the
modem with the following modem strings:
MODEM.RESET
ATZ
MODEM.INIT
MODEM.RESET
=======================================================================
@endnode
@node Cap071206 "BBS:NODE<x>/MODEM Directory Info"
=======================================================================
MODEM.INFO - This ICON only represents a Directory. This
~~~~~~~~~~ Directory is required to be within the
BBS:NODE<x>/ directory.
ABOUT: This directory will contain MODEM definitions for AmiExpress.
The following list are ICONS which should be placed in this directory:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@{" <name>.DEF.INFO ICON " Link Cap07120601}
=======================================================================
@endnode
@node Cap07120601 "BBS:NODE<x>/MODEM/<name>.DEF.INFO ICON Info"
=======================================================================
<name>.DEF.INFO - This ICON should be placed in the NODE<x>/MODEM
~~~~~~~~~~~~~~~ directory and specifies the MODEM Prefs of
your Express.
- You can <name> it with every name you want
ACP will look for the #?.DEF.INFO file in the
MODEM directory. NO SPECIAL NAME NEEDED.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MODEM.INIT= - tells /X how to initialize your modem.
MODEM.RESET= - tells /X how to reset the modem for receiving
another call.
MODEM.RING= - tells /X how to notice an incoming call from the
modem.
MODEM.ANSWER= - tells /X how to respond an incoming call from a
modem.
MODEM.OFFHOOK= - tells /X how to take your modem off hook.
=======================================================================
@endnode
@node Cap0713 "BBS:COMMANDS Directory Information"
=======================================================================
COMMANDS.INFO - This ICON only represents a Directory. This
~~~~~~~~~~~~~ Directory is required to be within the BBS:
directory.
ABOUT: This directory will contain Module definitions for Modules that
are in different directories and will now be listed,
@{" BBSCmd <Directory> " Link Cap071301} @{" SYSCmd <Directory> " Link Cap071302}
@{" CONF(x) <Directory> " Link Cap071303} @{" NODE(x) <Directory> " Link Cap071304}
=======================================================================
@endnode
@node Cap071301 "BBS:COMMANDS/BBSCmd Directory Information"
=======================================================================
BBSCmd.INFO - This ICON only represents a Directory. This
~~~~~~~~~~~ Directory is required to be within the COMMANDS
directory.
ABOUT: This directory will contain Module definitions for Modules that
are allowed to be executed globally throughout the BBS.
The following list are ICONS which can be placed in this directory:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@{" <module>.INFO ICONS " Link Cap0713011}
=======================================================================
@endnode
@node Cap071302 "BBS:COMMANDS/SYSCmd Directory Information"
=======================================================================
SYSCmd.INFO - This ICON only represents a Directory. This
~~~~~~~~~~~ Directory is required to be within the COMMANDS
directory.
ABOUT: This directory will contain Module definitions for Modules that
are allowed to be executed only from MCI Message/Textures or
internal Module execution but not from Main Menu prompt.
The following list are ICONS which can be placed in this directory:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@{" <module>.INFO ICONS " Link Cap0713011}
=======================================================================
@endnode
@node Cap071303 "BBS:COMMANDS/CONF<x> Directory Information"
=======================================================================
CONF<x>.INFO - This ICON only represents a Directory. This
~~~~~~~~~~~~ Directory is required to be within the COMMANDS
directory.
ABOUT: This directory will contain Module definitions for Modules that
are allowed to be executed only in that Conference you choose by
changing <x>.
The following list are ICONS which can be placed in this directory:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@{" <module>.INFO ICONS " Link Cap0713011}
=======================================================================
@endnode
@node Cap071304 "BBS:COMMANDS/NODE<x> Directory Information"
=======================================================================
NODE<x>.INFO - This ICON only represents a Directory. This
~~~~~~~~~~~~ Directory is required to be within the COMMANDS
directory.
ABOUT: This directory will contain Module definitions for Modules that
are allowed to be executed only in that Node you choose by
changing <x>.
The following list are ICONS which can be placed in this directory:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@{" <module>.INFO ICONS " Link Cap0713011}
=======================================================================
@endnode
@node Cap0713011 "<Module>.INFO ICONS ToolTypes Information"
=======================================================================
<module>.INFO - This ICON defines a MODULE for /X. The Name of
the <module> should be the same as the executing
in MainMenu prompt, and should be in one of the
three Directories.
a> BBSCmd - Modules in this directory are allowed to be
executed from any menu prompt or MCI text file.
b> SYSCmd - Modules in this directory are only accessible by
MCI text files and internal BBS operations.
c> CONF(x) - Modules in this directory are allowed to be
executed from conference (x) menu prompt or from
any MCI text file in conference (x).
d> Node(x) - Modules in this directory are allowed to be
executed from node (x) menu prompts or from any
MCI text file in Node (x).
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ACCESS= <numb> - tells /X the access level required to run this
module. This option is ignored for internal
Module options.
INTERNAL= <command> - Specifies if you want to have this Module the
same as a internal AmiExpress command. if you
choose this option you don`t need the following
tool types.
LOCATION= <string> - Specifies the location of the Module.
MULTINODE= <YES|NO> - tells /X if the module may be simultaneously
accessed from other nodes.
PASSWORD= <string> - force the user to enter password before executing
this module.
PASS_PARAMETERS=<res>- This tooltype only takes effect if you use the
INTERNAL tooltype as well, so the following
result options are available:
PASS_PARAMETERS=1 - This will tell express to not
execute the internal command.
PASS_PARAMETERS=2 - This will tell express to
swap the customcommand with
the internal command but
retain the commandline pars.
PASS_PARAMETERS=3 - This will do the same as the
previous entry except will
additionally tell express to
redo the menu command from
the top of the routines,
which means that express will
re-check the customcommands
to see if anything meets the
criteria.
PASS_PARAMETERS=4 - This option will tell AmiExpress
to bypass checking the BBSCmd
modules. This option was
primarily introduced to allow
a sysop to invoke an INTERNAL
command from a ConfXCMD and
forcing it to bypass checking the
BBSCmd directory for the
INTERNAL command.
PRIORITY= <numb> - Let's you set the priority of the door. If you use
PRIORITY=SAME, it will use the same Priority
that express uses.
QUICKMODE - This simply tells AmiExpress not to run the Module
in question if the user has logged onto the BBS
using the QUICK LOGON option.
STACK= <numb> - tells /X the stacksize to use when launching this
module. Default is 4096.
TYPE= <XIM | AIM | TIM | IIM | SIM | MCI >
- tells /X which type of module it is to support:
XIM = /X Standard Module
AIM = Arexx Module (requires REXXDOOR in
BBS:Utils directory)
TIM = Traditional BBS Module (requires PARADOOR
in the BBS:Utils directory)
IIM = NO INTERFACE - This type of Module will
SPAWN the specified MODULE and not wait on
it to finish.
SIM = Script BBS Module - This type will execute
any normal BatchScript.
MCI = MCI Commanding.
TRAPON - This makes LOGON Output go to a Log for Error
Checking.
=======================================================================
@endnode
@node Cap0714 "BBS:STORAGE Directory Information"
=======================================================================
STORAGE.INFO - This ICON only represents a Directory. This
~~~~~~~~~~~~ Directory is required to be within the BBS:
directory.
The following list are ICONS which should be placed in this directory:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@{" ICONS <Directory> " Link Cap071401}
=======================================================================
@endnode
@node Cap071401 "BBS:STORAGE/ICONS Directory Information"
=======================================================================
ICONS.INFO - This ICON only represents a Directory. This
~~~~~~~~~~ Directory is required to be within the
BBS:STORAGE directory.
The following list are ICONS which should be placed in this directory:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@{" ICONIFIED.INFO ICON " Link Cap07140101}
=======================================================================
@endnode
@node Cap07140101 "BBS:STORAGE/ICONS/ICONIFIED.INFO ICON Info"
=======================================================================
ICONIFIED.INFO - This ICON should be placed in the
~~~~~~~~~~~~~~ BBS:STORAGE/ICONS directory and represents the
ICONFIED ICON for the ACP SERVER if you close the
window.
=======================================================================
@endnode
@node Cap08 "Normal Documentation of AmiExpress"
=======================================================================
The following documentation is designed to let the System Operator
know exactly what is taking place in each step of the BBS operations.
Apart from being a descriptive account of how Ami-Express works, this
documentation also tries to help sysop's optimize their systems for
maximum efficiency.
Well, the real update of the V3.36 DOCS have been needed for a long
time. Here they are, 4.0 this time done by me Andy (The Outlaw).
The most difficult process in any software commercial release is the
development of the Documentation. After seeing Jens Langer's docs first
release of 3.60, which was different from the normal Documentation I
decided that an update of the AmiExpress Docs in AmigaGuide format will be
included in every future version of AmiExpress. Anyway if you like this
Documentation or you have a problem with AmiExpress you can call LightSpeed
Technologies BBS Support board and I will help you with AmiExpress as much
as I can. It`s very hard to write docs, and I hope you like this new
styling of the AmiExpress Docs.
But now lets go on with the normal Documentation of AmiExpress.
Now go with the mouse cursor to the ACP.CTRL ICON and click on it
two times. You should notice a ICONIFIED window appear on the
workbench screen.
If ACP.CTRL did not appear on the Workbench Screen, ACP.CTRL
should have left you an error message. If there appears an Error message,
please write down the information of the error that is displayed or
If the ACP.CTRL doesn`t return a Error Message contact your local
AmiExpress support BBS for more help. Now you should click on the ICONIFIED
ICON of ACP.CTRL, this will expand the ACP window to reflect a series of
buttons. To the left of the window you should see a NODE (x) button
for each NODE you want to run. You should also notice at the upper
portion of the window, 4 categories:
'User', 'Location', 'Action' & 'Baud'. Under 'Action' you should see
a message pertaining to each node saying 'Awaiting Connect'.
If you do not see the 'Awaiting Connect' message please open a shell
and type Express x (where x is the node number), this should display an
error message, most common problems, is that you did not setup the
configuration ICONS correctly, this could mean that you misspelled the
device driver for the serial port, or it could be that you are missing
some files. Whatever it is, it should tell you.. Refer to later sections
in this documentation for corrective actions.
Below the node buttons you should see a series of 18 buttons. There
are 15 buttons in 3 columns on the left bottom of the window., These
buttons control AmiExpress, the way to implement one of these buttons is
to click on 1 of the 15 and then select a NODE button for action.
Now if all nodes are showing 'Awaiting Connect' do the following:
1> Press the Accounts button
2> Press the NODE 0 button
This will take you into account editing, you should see the following:
-------------------------------------
S>earch by name N>ew account editing C>redit Accounts
Edit Which Account?
-------------------------------------
1> Type 1 then press <RETURN>
This will take you into account number one, which is yours.
You should see the following information:
--------------------------------------------------------------------------------
ACTIVE [1] BAUD: 14400
A> Name: User Name-------------------30 B> Real Name: Joseph Hodge
C> Loc.: location D> Pass ..........: ENCRYPTED
E> Phone Number ..: 800-555-1212 G> Area Name......: Standard
F> Ratio .........: 0 I> Sec_Level .....: 255
H> Ratio Type ....: 0 <-Byte) K> AutoReJoin ....: 1
J> Uploads .......: 0 M> Messages_Posted: 0
L> Downloads .....: 0 O> New_User ......: No #Calls: 0
N> Bytes Uled ....: 1 Last Called ...: Tue May 26 22:00:17 1994
P> Bytes Dled ....: 0 Computer Type .: Amiga 1000
Q> Byte Limit ....: 0 Screen Type ...: Amiga Ansi
R> Time_Total: [0 ] mins Y> Cps Up: 0 Z> Cps DN: 0
S> Time_Limit: [0 ] mins T> Time_Used: [0 ] mins W> UUCP: 0
U> Chat_Limit: [0 ] mins V> Chat_Used: [0 ] mins
X=EXIT-NOSAVE ~=SAVE 1-8=Presets 9=RE-ACTIVATE DEL=DELETE
TAB=CONT @=CONFERENCE ACCOUNTING !=CREDIT ACCOUNT MAINTENANCE
--------------------------------------------------------------------------------
2> Press the letter A, this will let you put your user name on your
account.
3> Press the letter B, this will let you setup your real name,
if you want to have access to internet ect.
4> Press the letter C, this will let you setup an address, group name
or whatever you like.
5 Press the letter D, this will let you assign yourself a password.
6> Press the letter E, this will let you out your phone number in.
7> Now you can press a number between 1 and 8 for account defaults.
8> Make sure that your Time_Limit is not 0.
9> Press the tilde '~' to save the account,.
Here is a sample of a completed sysop account:
--------------------------------------------------------------------------------
ACTIVE [1] BAUD: 14400
A> Name: User Name-------------------30 B> Real Name: Joseph Hodge
C> Loc.: location D> Pass ..........: ENCRYPTED
E> Phone Number ..: 800-555-1212 G> Area Name......: Standard
F> Ratio .........: 0 I> Sec_Level .....: 255
H> Ratio Type ....: 0 <-Byte) K> AutoReJoin ....: 1
J> Uploads .......: 0 M> Messages_Posted: 0
L> Downloads .....: 0 O> New_User ......: No #Calls: 0
N> Bytes Uled ....: 1 Last Called ...: Tue May 26 22:00:17 1994
P> Bytes Dled ....: 0 Computer Type .: Amiga 1000
Q> Byte Limit ....: 0 Screen Type ...: Amiga Ansi
R> Time_Total: [0 ] mins Y> Cps Up: 0 Z> Cps DN: 0
S> Time_Limit: [0 ] mins T> Time_Used: [0 ] mins W> UUCP: 0
U> Chat_Limit: [0 ] mins V> Chat_Used: [0 ] mins
X=EXIT-NOSAVE ~=SAVE 1-8=Presets 9=RE-ACTIVATE DEL=DELETE
TAB=CONT @=CONFERENCE ACCOUNTING !=CREDIT ACCOUNT MAINTENANCE
--------------------------------------------------------------------------------
9> Press the TAB key to complete the editing.
Now you should see the following:
-------------------------------------
S>earch by name N>ew account editing C>redit Accounts
Edit Which Account?
-------------------------------------
10> Press return to exit account editing.
11> Select the close gadget to return to the workbench screen. This
will also of course close the BBS Window.
=======================================================================
@endnode
@node Cap09 "The Programlogic of AmiExpress"
=======================================================================
We will now describe the program logic of the Express so you can
learn how to operate AmiExpress to it's maximum potential.
The ACP window has 15 major buttons at the bottom of the window.
Here is a list of there names and function:
[ Sysop LOGON ].....Logs you into a node as the sysop.
[ Local LOGON ].....Enters the initial log on phase of the Node
This will require you to specify your name
and password.
[ Instant LOGON ]...This will give a carrier detect command to the
modem, this is good for re-establishing a
connection to a user after talking to them voice
on the same line.
[ Reserve Node ]....This allows you to tell the Node to only let a
certain user on the BBS. After the user has called
the node will no longer be reserved.
[ AEShell ].........This will open a shell on the Node screen.
[ Accounts ]........This takes you into account editing on a node.
[ Toggle Chat ].....This toggles the Node's chat request flag, if a
Nodes Chat request flag is off, then only user of
a high enough security level be able to request a
chat.
[ INIT Modem ]......This re-initializes a modem of a particular node.
[ Exit Node ]......This will shutdown the node in question.
[ Node(offhook) ]...This will shutdown the node in question and also
make the line busy.
[ Node Config ].....This will bring up our Config program for a
particular node.
[ Node Chat ].......This button will take you into chat mode with a
particular node.
[ Save Win ]........This button does not require a NODE(x) complement.
This simply saves the window coordinates of ACP to
a file called S:ACP.Config
[ Set NRAMS ].......This button will Set the NRAMS of your Modem and
will save it to the EPROM.
NOTE: All of the above mentioned buttons unless said otherwise, require
~~~~ you to press the Appropriate node button for them to take effect.
Once all of the NODES are started the following actions take place for
each node:
At this point the BBS will load up the computer types from a ICON
called:
BBS:COMPUTERLIST.INFO
Ami-Express then checks if the node is already running as another task,
and if it is, then the program halts and exits with an error message.
Next, Ami-Express will try to access the LIBS:REXXSYSLIB.LIBRARY for
it's Arexx port routines, and if not found, will disable the Arexx port
and inform the user that the Rexx port is disabled.
Ami-Express will run thru it's initialization process where it will take
the modem off-hook, and configure it for BBS operation. This is done so
that an incoming call does not alter the configuration process.
While someone is ONLINE you have the following function keys available
to you:
F1 - Chat in/out
F2 - Increase On-line time limit +10 mins
F3 - Decrease On-line time limit -10 mins
F4 - Asks for a path/filename for a capture file (only on the SYSOPS
side) or if one is already open then it closes the capture and
lets you know it did so. when you press F4 again the capture
will be stopped.
S+F4 - This will pop up an ASL Requester to let you choose an ASCII File
to be send to the user.
F5 - Local Shell
F6 - Account Editing
S+F6 - This will let you change the Account of a User only for that call
he is ONLINE. When he locks off the BBS will reset his Account
to the old one. Press Shift+F6 a second time and the changes will
be restated to the old ones.
F7 - Chat Flag toggle (whether you are to be paged or not)
F8 - Serial in on/off (User can`t write until you press F8 again)
F9 - Serial out on/off (User can`t see what you are typing)
F10 - Keyboard out on/off (Disconnect ONLINE User *KICK*)
Now follows the normal reactions of AmiExpress when something happens
if the BBS is in the standby mode and the nodes are standing at
"Awaiting Connect".
(1). The BBS checks for F key input from the local keyboard.
(2). Or data coming in the serial port.
(3). Or data coming in the internal communication AmiExpress_Node(x)
msgport for commands either suspend, resume, or shutdown.
(4). Or data coming in from the AmiExpress window itself (Gadgets etc..)
(5). Or data coming in from AmiExpress Control.(ACP)
Once the modem picks up a RING DETECT, the BBS sends an Answer
string specified in the Config file to the modem, and waits
for a response from the remote modem. If the result string
is a valid connect string, the BBS continues with normal
operations, if not, it resets the modem and the ACP screen will
return to "Awaiting Connect" state.
If the connect string was a valid one, AmiExpress first checks
a couple of things before performing the LOGON routine:
(1). System checks for a file called:
BBS:NODE{x}/NOCALLERSAT{BAUD} where x is node number and
BAUD is the baud rate that is unaccepted. If this file
exists, and the current baud rate matches the BAUD, then
the BBS displays the file and disconnects.
(2). Displays the connect string received from the modem.
(3). Now, the BBS displays the standard welcome message,
and starts to perform the actual LOGON procedure.
(4). Check to see if you have a Module called FRONTEND , if so it
executes it. see section regarding doors for more info.
Explanation:
To Install the FRONTEND module you have to a ICON to the
BBS:COMMANDS/SYSCMD directory called "FRONTEND"
(5). BBS checks if there is a module called "ANSI" in the SYSCMD
Directory if so it will start the door you insert and will skip
the selecting of ANSI or ASCII Colors. Look at Point (4) above
for more Info about installing these doors.
If the BBS can`t find such a door it will asks if the user wants
ANSI graphics or not. If a 'Q' is specified at the end of the line
like: "YES Q" or "Y Q" etc. Then the BBS checks if the Option
DISABLE_QUICK_LOGONS is on or not if the option is on the BBS will
display the Logon.txt because you want to have the users seen it.
If the Option is off and the user answers "Y Q" or "YES Q" the BBS
will not display the LOGON or logoff screens.
(6). Then if the sysop has specified a SYSTEM PASSWORD it
displays a file called: BBS:NODE<x>/PRIVATE.TXT then
asks for the SYSTEM PASSWORD you specifies. The system gives the
user three tries and if by then he hasn't gotten it the BBS
hangs up, and displays in the CallersLog that someone
attempted to get the SYSTEM PASSWORD.
(7). The BBS displays the file: BBS:NODE{x}/BBSTITLE.TXT
(8). It now asks for the user to enter his FULL NAME, again WILDCARDS
are usable and will expand and ask if correct. A user gets
five tries at his user name, then the BBS hangs up.
(9). If the BBS can't find the name supplied it will tell the user
and ask him if he would like to 'C'ontinue to join or 'R'etry
entering his name again.
[C]ontinue as a New User Selected:
----------------------------------
(1). If the BBS has been reserved it will notify the user that
the BBS has been reserved for a specific member and will
then hang-up.
(2). If the BBS hasn't been reserved then the BBS checks to see if
the user's baud rate is allowed during the time he has called.
If so, then the BBS allows the user to continue, otherwise it
displays the file: BBS:NODE{x}/NOTTIME{BAUD}.TXT
{x} = Node number, {BAUD} = Current Baud rate.
(3). If the sysop has specified a new user password in the Config
file then the BBS displays the file:
BBS:NODE{x}/NEWUSERPW.TXT
Then it asks for the new user password and if the user gets
the password wrong it goes back and asks for his FULL NAME
again, after 5 tries the BBS hangs up.
(4). If the System-Operator wishes to have no more NEW users the BBS
would look for the file BBS:NODE{x}/NONEWUSERS then displays it
and disconnect the User. And if you wishes to have no more NEW
users at a SPECIFIC BAUD RATES, the BBS would look for a file
called BBS:NODE{x}/NONEWAT{BAUD}, displays it and then
disconnecting the User.
{x} = Node number, {BAUD} = Current Baud rate.
(5). Now it enters the New Account routines.
1. Search displays BBS:NODE{x}/JOIN.TXT
2. Asks for full name. At this point WILDCARDS are NOT
ALLOWED. The user only has 5 chances to enter it then
the BBS says "Too Many Errors, Good-bye!"
3. The BBS checks for use of a name that already exists.
If the name already exists it asks again.
4. The BBS checks the name given to see if not in the list
of names supplied in the icon BBS:NAMESNOTALLOWED
This is a file that contains names that the sysop does
not want to allow on the BBS. If the file does not
exists the BBS will not allow any new users to log on
until the file has been added. This is to prevent
someone getting on as ALL or EALL etc. A notice will
be placed at the end of the BBS:NODE{x}/CALLERSLOG file.
WARNING: You should specify in that list SYSOP, ALL, and EALL
5. Next it asks for the City, State.
6. The it asks for Phone Number (xxx-xxx-xxxx)
7. Next, it asks for the Users personal Password
8. Number of lines on screen (1-255)
9. Clear Screen between Messages ?
10. Asks for which ScreenType the User want to have.
11. Display back all info and asks if it is correct if
the user needs to change something he just says no
its not correct and the process starts again at 2..
12. At this point the BBS checks to see if there is a
script Module in the SYSCMD Directory and if express
will find this module it will start it instead of the
normal SCRIPT questionnaire. And if express can`t find
such a Module it will start the normal SCRIPT
questionnaire to ask the user to fill out, it
checks for BBS:NODE{x}/SCRIPT{BAUD}
{x} = Node number, {BAUD} = Current Baud rate.
NOTE: The {BAUD} should be specified as 1200,2400,4800,
9600, 12000, 14400 and 16800 to allow for proper
connect handling by USR HST modems.
Now the user is asked to fill out the script if existent.
A sample script may look like:
-------------Cut Here--------------------
What is your Real Name: ~
What is your Real # : ~
What is your Sex,Age : ~
-------------Cut here--------------------
Here, the ~ character is used when a prompt for input
by the user is expected. The answers are saved to
BBS:NODE{x}/TEMPANS before being validated by the sysop.
Once the Sysop validates the User, the answers are copied
over to BBS:NODE{x}/Answers.
13. The BBS then displays the file BBS:NODE{x}/JOINED.TXT
(10). Once the system has loaded the users account, it checks to see
if the system has been reserved, if so and the user who just
logged in is not the reserved user the BBS displays that the
system has been reserved for that specific user, and then hangs
up.
(11). Then the BBS will display the BBS:NODE{x}/LOGON.TXT, text
where x stands for the Node.
(12). If the BBS hasn't been reserved then the BBS checks to see if
the user's baud rate is allowed during the time he has called.
If so, then the BBS allows the user to continue, otherwise it
displays the file: BBS:NODE{x}/NOTTIME{BAUD}.TXT
(13). If the users Security level is 0 then the BBS displays the
file: BBS:NODE{x}/LOCKOUT-0.TXT and then hangs up.
(14). If the users Security level is 1 then the BBS displays the
file: BBS:NODE{x}/LOCKOUT-1.TXT and then hangs up.
NOTE: These two files allow a sysop to be either polite about not
allowing a user on the system, or if the user is an abuser,
the sysop can have a full blown rude as hell Lockout text for
those types of users.
(15). At this point the system adds to the end of
BBS:NODE{x}/CALLERSLOG that a user just logged in.
(16). Now the BBS asks the user for his password, every time the user
gets the password wrong the BBS adds what he tried to the end
of BBS:NODE{x}/CALLERSLOG. After 3 tries the BBS hangs up and
adds this to the CALLERSLOG.
(17). Then the standard LOGON sequence takes place and puts the user
at the main command prompt
LOGON SEQUENCE FOR A PREVIOUS USER:
-----------------------------------
When a user with an existing account logs into the BBS, the LOGON
procedure is a lot more simplified. The standard LOGON procedure is
listed below:
(1). The BBS checks to see if the user has any time for the day
if not it displays BBS:NODE{x}/LOGON24HRS.txt file to the
user and hangs up.
(2). If no BULLBATCH files are specified, the BBS looks for any
Bulletin files in BBS:NODE{x}/BULL{SEC}.TXT where
{x} = NODE NUMBER and {SEC} = USERS CURRENT SECURITY LEVEL.
If a file is found that matches the user`s security level,
it is displayed. For example, a last callers bulletin for
standard user security of 20 would be saved in the BBS:NODE{x}
directory as follows: BBS:NODE{x}/BULL20.TXT and
BBS:NODE{x}/BULL20.TXT. This routine has also been simplified
from the sysop's end so that the appropriate bulletins are
searched for in a rounded off method.
ie: If a user level with security level of 20 has logged in, and
the BBS cannot find an entry for
BBS:NODE{x}/BULL20.TXT but
finds a file called BBS:NODE{x}/BULL15.TXT, then this file
will be displayed. If there is also a file called
BBS:NODE{x}/BULL30.TXT, this file will be displayed to users
with security level of at least 30 or more. Once the BBS finds
the nearest file, it displays that file only.
NOTE: Routines have been added to AmiExpress to make sysop setup
a little easier and less annoying to the user. The BBS will
scan for a particular file in this method:
Say a user with access level 30 just logged in, with ANSI color,
now the BBS will check first if there is a BULL30.TXT and if not
the BBS will go on with searching for bulls lower than 30.
Look here:
BBS:NODE{x}/BULL30.TXT
BBS:NODE{x}/BULL25.TXT
BBS:NODE{x}/BULL20.TXT
BBS:NODE{x}/BULL15.TXT
BBS:NODE{x}/BULL10.TXT
BBS:NODE{x}/BULL5.TXT
BBS:NODE{x}/BULL.TXT
NOTE: because of this method of searching, all files to be
searched for must end in either 0 or 5 (as above), the
user access level will be rounded down to the nearest
multiple of 5 and the search will start there.
That's an example of a search for a file to be displayed, once
a file is found that exists it displays ONLY that file.
This method is used on the following:
BBS:NODE{x}/BULL
BBS:NODE{x}/JOINCONF
BBS:CONF/MENU
BBS:CONF/BULL
In some cases it works a little different, in this case
the user security is not used, like:
BBS:CONF/Bulletins/BULLHELP.TXT
BBS:CONF/Bulletins/BULLHELP.TXT
That's how that one works and the following are like that:
BBS:NODE{x}/JOINED
BBS:NODE{x}/LOGON24HRS
BBS:NODE{x}/GUESTLOGON
BBS:NODE{x}/LOGON
BBS:NODE{x}/LOGOFF
BBS:NODE{x}/JOIN
BBS:NODE{x}/NOTTIMEBAUD
BBS:NODE{x}/PRIVATE
BBS:CONF/FILEHELP
NOTE: For multiple bulletins upon LOGON, a BULLBATCH script is used
to display the necessary bulletins in the correct order. For
more information on this, please refer to the section under
BULLBATCH implementation.
(3). Initial User specific checks are made:
a> The BBS now scans thru all the conferences that the user has
access privilege to for any waiting mail. While scanning, AmiExpress
will store the MSG numbers in memory until the end of the scan,
at the end of the scan AmiExpress will proceed to show the user the
originator of each message and then proceed to prompt the user if
he/she wishes to read the mail.
This method of scanning has 3 advantages:
1. The user will now know who left him/her mail prior to reading it.
2. The NewMail Scan pointer will not be updated until all the mail is
read. So if the user has 2 messages '100' and '101' and he/she
reads message 101 and not 100, then the next time the user logs on
or does a mail scan, he/she will still be notified of message 100.
3. The NewMailScan will now remember the last valid message left to
the user when the user losses carrier or logs off.
If mail is found, it
informs the user about it and asks the user if they want to view
it.
b> The BBS checks to see if there are any unfinished uploads.
If someone looses carrier uploading a file and calls back
he will be allowed to resume his/her upload.
(4). Then the BBS rejoins the conference the user was in the last time
he called.
(5). It then checks the ICON BBS:CONF to see how many, if any,
directories of files that specific conference has.
It will check if in the ICON the NDIRS is bigger than 0.
for example:
~~~~~~~~~~~ NDIRS=2
This would specify that there are two file directories where files
are kept. A carriage return is necessary after the number.
If this file is unavailable, the conference will have NO files
available in it, meaning no uploads or downloads will be possible
from it.
(6). If the number of directories is greater than zero, the BBS looks
to see if a in the CONF ICON the Tooltype "FREEDOWNLOADS" is turned
on, if so then all files in this particular conference are free to
download.
(7). Now, the BBS scans for any BBS:CONF/BULL{SEC}.TXT files in
the same method as described earlier on.
NOTE: This works exactly like the BBS:NODE{x}/BULL files.
(8). After displaying the available bulletins, if the user is not in
EXPERT mode, the BBS displays the available
BBS:CONF/MENU{SEC}.TXT and reaches the MAIN MENU PROMPT.
a> Any command entered at the MAIN MENU PROMPT will be looked up
in a BBS:Commands/BBSCmd directory. If the command is found as
a module name in the directory the module will be executed.
If the command cannot be found, then the command will be compared
to BBS:Commands/NODE{x}CMD directory and like wise be executed
if found. If the command cannot be found, then the command will be
compared to BBS:Commands/CONF{x}CMD directory and like wise be
executed if found.
Otherwise the command will be considered an internal
command and maybe any of the commands listed below.
=======================================================================
@endnode
@node Cap10 "The MainMenu Commands of AmiExpress"
=======================================================================
This is a list of commands accessible from the main menu prompt:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
AmiExpress has many functions that are part of the program code that
assist users in what they want out of the system. These commands are
mostly single letter commands that the user types and hits return for
the execution. AmiExpress does not work with a HOT-KEY type of user
input. This means that the user will be saved from having to look at
a screen load of data when they accidentally hit a wrong key.
A carriage return always indicates an intended execution.
This section is divided into two parts, The SYSOP ONLY COMMANDS, and the
Standard User Commands.
@{" SYSOP Only Main Commands " Link Cap1001} @{" STANDARD USER Main Commands " Link Cap1002}
=======================================================================
@endnode
@node Cap1001 "SYSOP Only Commands....."
=======================================================================
SYSOP ONLY COMMANDS:
~~~~~~~~~~~~~~~~~~~
These commands are the only commands that are called up by single digit
number codes. They are available only to users with SYSOP SECURITY
LEVELS as defined in the Config file by AmiConfig under ACCOUNT EDITING.
@{" Command: '1' <AccountEditing>" Link Cap100101} @{" Command: '2' <CallerslogView>" Link Cap100102}
@{" Command: '3' <Edit File Dirs>" Link Cap100103} @{" Command: '4' <Edit Text File>" Link Cap100104}
@{" Command: '5' <View Directory>" Link Cap100105} @{" Command: '0' < Remote Shell >" Link Cap100106}
@{" Command: 'DS'<Sysop Download>" Link Cap100107} @{" Command: 'VS'< Sysop View >" Link Cap100108}
=======================================================================
@endnode
@node Cap100101 "[ 1 ] - Account Editing...."
=======================================================================
[ 1 ] - Account Editing:
~~~~~~~~~~~~~~~
This is used to either review existing accounts and modify them, or
scan for any new user LOGONS that wish to be validated. The account
editing module is very easy to use in that it is basically menu
driven. You can also get into the BBSInfo CONF. from here.
Before Express will start the normal Account Editing it will try
to open a MODULE called "ACCOUNTS" which should be located in the
SYSCMD Directory. This is for further coming releases of different
Account Editors.
The AccountEditing will look like this:
--------------------------------------------------------------------------------
ACTIVE [1] BAUD: 14400
A> Name: ByteMaster B> Location ......: Location
C> Pass ..........: ENCRYPTED
D> Phone Number ..: 318-793-4101 F> Area Name......: Standard
E> Ratio .........: 0 H> Sec_Level .....: 255
G> Ratio Type ....: 0 <-Byte) J> AutoReJoin ....: 1
I> Uploads .......: 0 L> Messages_Posted: 0
K> Downloads .....: 0 N> New_User ......: No #Calls: 1
M> Bytes Uled ....: 1 Last Called ...: Tue May 26 22:00:17 1994
O> Bytes Dled ....: 0 Computer Type .: Amiga 1000
Q> Byte Limit ....: 0 Screen Type ...: Amiga Ansi
P> Time_Total: [0 ] mins Y> Cps Up: 0 Z> Cps DN: 0
R> Time_Limit: [0 ] mins S> Time_Used: [0 ] mins T> UUCP: 0
U> Chat_Limit: [0 ] mins V> Chat_Used: [0 ] mins
X=EXIT-NOSAVE ~=SAVE 1-8=Presets 9=RE-ACTIVATE DEL=DELETE
TAB=CONT @=CONFERENCE ACCOUNTING !=CREDIT ACCOUNT MAINTENANCE
--------------------------------------------------------------------------------
Press the following keys to change the data of the User:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
A> Lets you change the name of the User you are looking at
B> Lets you change the location where the user is living
C> Lets you change the password of the user you are looking at
D> Lets you change the phonenumber of the current user
E> Lets you change the Ratio of the user you are looking at
F> Here you can change the Conf.Access of the User
G> Lets you change the Ratio Type of the User. From here you have 3
different Ratio Types:
- Ratio Type 0 = Bytes only
- Ratio Type 1 = Bytes & Files
- Ratio Type 2 = Files only
This ratio type are for choosing in which way the Ratio will be
calculated.
H> Lets you change the Security Level of the user you are looking at
I> Lets you change the number of Upload the user has done.
J> Lets you change the Conference at which the User logged in the last
time he called the system.
K> Lets you change the number of downloads the user has done.
L> Lets you change the number of Messages the user posted in the BBS.
M> Lets you change the number of Bytes the user uploaded.
N> Lets you change if the user is a NEW USER or not. this is a flag
function. if it is in the "YES" mode the user will be found if you
search for new users. After you edit the USERDATA with a present
the flag will be changed automatically to "NO".
O> Lets you change the number of Bytes the user downloaded.
P> Lets you change the Time Total for the day.
Q> Lets you change the number Bytes which the can download at a day.
R> Lets you change the Time Limit for a day.
S> Lets you change the Time the user has already used today.
T> Lets you change if the User is a User of UUCP or not.
U> Lets you change the chat limit time a user has.
V> Lets you change the chat limit used for the day.
Y> Lets you change the Top Upload CPS the User ever had.
Z> Lets you change the Top Download CPS the User ever had.
#> Lets you change the Number of Calls a user has done to your System.
Now follows the normal commands in the Account Editing:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ X ] - Exit the Account editing without saving the current changes
[ TAB ] - Lets you go to the next user who matches to the USERNAME
you entered before.
[ ~ ] - Will save the current changes of the USERDATA.
[ 1-8 ] - Will set the USERDATA to a Present of ACP.STARTUP
[ 9 ] - This command will re-activate a deleted user.
[ DEL ] - This command will delete the user you are looking at.
you can re-activate a user by typing "9" at the AccountEditing
[ + ] - Will go on the next user in the USERDATA.
[ - ] - Will go on the previews user in the USERDATA.
[ ! ] - This will activate the ACCOUNT CREDIT MAINTENANCE. This feature
allows you to keep track of paying users, The assumption is that
if a user pays, then they are paying for a DISABLED ratio. CREDIT
MAINTENANCE will let you establish the number of days that the
credit account is to be in effect. During this time period the
user will be given an 'EFFECTIVE' DISABLED ratio. Their ratio
does not actually change, but express will treat there account as
a disabled ratio. So during the credit period an 'FS' command or
'S' command will reflect a DISABLED ratio. Once the credit
account has expired, express will then use the ratio established
for the user.
[ @ ] - Will bring you into the Conference Accounting. You MUST! have
conference accounting on for this to work. Once in this area,
you will be shown each conference, screen by screen, there you
can edit the user's STATS for each conference. You go from
conference to conference by using the +/- keys. Follow the
screens to save and exit.
=======================================================================
@endnode
@node Cap100102 "[ 2 ] - View CallersLog...."
=======================================================================
[ 2 ] - View CallersLog:
~~~~~~~~~~~~~~~
This lets the sysop view the BBS:NODE{x}/CALLERSLOG file backwards.
The last line written to the CALLERSLOG will be displayed first
and the first line of the CALLERSLOG will be displayed last.
On system running more than one node, this command will ask which
NODE's CALLERSLOG to view.
=======================================================================
@endnode
@node Cap100103 "[ 3 ] - Edit File Directories (EDITOR/EMACS)...."
=======================================================================
[ 3 ] - Edit File Directories (EDITOR/EMACS):
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
If you started this Command, the BBS will check if the one who started
the command is a remote or a local one. If the one who started it is
a local one it will search for a Door called "EDITOR" in the SYSCMD
and if it exists it will be executed and the normal starting of the
EMACS will be skipped.
If the one who started the command is in REMOTE_LOGON then the command
will be executed as follows:
This command uses the command line version of MicroEmacs for on-line
directory editing. For more information on how to use EMACS, you
should refer to the section on COMMON EMACS COMMANDS.
This command asks the user which directory to edit before it opens
up the appropriate AUX: or CNN: channel and executing EMACS.
NOTE: AUX{x}: is used only on remote connections and if active
~~~~ a watchdog task that checks for carrier loss is also invoked.
If carrier is lost while editing directories, the computer
will be reset within two seconds.
A special note to MULTI NODE systems: The watchdog resets the
computer if a carrier is lost regardless of what the other
nodes are doing. If users are logged in on other nodes, they
will be disconnected when the computer resets. A later version
of AmiExpress will send a notification to the other nodes and
a time-out requestor locally will inform the sysop and users
that express wants to reset the computer and that everyone
should finish up what they're doing.
Exiting from EMACS with CTRL-X CTRL-C key combination will return the
user to the MAIN MENU PROMPT. While a user is in EMACS, the BBS will
notify the sysop by placing a line like:
User in EMACS........
WARNING! for those of you using the A2232 multi serial card
you may run into problems using the editor. We
are currently working on a FullScreen editor to
take it's place.
=======================================================================
@endnode
@node Cap100104 "[ 4 ] - Edit any Text File on System (EDITOR/EMACS)...."
=======================================================================
[ 4 ] - Edit any Text File on System (EDITOR/EMACS):
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This command is basically the same as the previous with the option
to specify full path and file name to edit. This commands prompts
the user for the necessary information.
=======================================================================
@endnode
@node Cap100105 "[ 5 ] - List System Directories...."
=======================================================================
[ 5 ] - List System Directories:
~~~~~~~~~~~~~~~~~~~~~~~
This command works just like the AmigaDos List command and displays
the directory and sub-directories available for the specified path.
The command can also display any comments (FILENOTES), attached to
the files themselves. When selected, AmiExpress will ask for the
full path name and whether to include comments or not.
=======================================================================
@endnode
@node Cap100106 "[ 0 ] - Remote Shell...."
=======================================================================
[ 0 ] - Remote Shell:
~~~~~~~~~~~~
This Command has been removed currently in this version of express.
There are some great doors with the same capabilities to replace
this command. If you choose one of the great doors that are out, I
Personally recommend the MALTESE FALCON's version. If you use
FALCON's Shell door, remember that the spy command does not work with
this version of Express, it was only able to handle 9 nodes. Express
can now handle 32 nodes, so disable this command in the cfg, otherwise
Install it as a normal door in your BBSCmd directory and choose the 0
button for that.
=======================================================================
@endnode
@node Cap100107 "[ DS ] - Sysop Download...."
=======================================================================
[ DS ] - Sysop Download:
~~~~~~~~~~~~~~
This Command is exactly the same as the normal User Download
command , but has the added ability with which the sysop can
download files from any path on the HardDisk. The WILDCARD searching
is removed in this command to prevent error in searching for files.
All files on the HardDisk can be downloaded with this command unless
the files are RESTRICTED for downloading with the File Comment
"RESTRICTED", this will prevent downloading of files you want never
to be downloaded by your co-sysop, or anyone else with DS enabled.
=======================================================================
@endnode
@node Cap100108 "[ VS ] - Sysop Text View...."
=======================================================================
[ VS ] - Sysop Text View:
~~~~~~~~~~~~~~~
This Command is exactly the same as the normal User Text View command,
and has the added ability, that the sysop can View any file from any
path on the HardDisk. All files can be viewed with this command,
unless the RESTRICTED file comment "RESTRICTED" is used. This will
prevent users from viewing private files of yours.
=======================================================================
@endnode
@node Cap1002 "REGULAR USER Commands...."
=======================================================================
REGULAR USER COMMANDS:
~~~~~~~~~~~~~~~~~~~~~
These commands are explained in detail. All the commands here can be
chosen in the ACCESS ICONS for EXPRESS.
@{" [<][>].....Fast Conf.joining " Link Cap100201} @{" [ A ].......Alter File Flags " Link Cap100202}
@{" [ B ]......Bulletins reading " Link Cap100203} @{" [ C ].......Comment to Sysop " Link Cap100204}
@{" [ D ].......Download File(s) " Link Cap100205} @{" [ E ]..........Enter Message " Link Cap100206}
@{" [ F ]..........File Listings " Link Cap100207} @{" [ FS ]......Full Status View " Link Cap100208}
@{" [ G ]........GoodBye(LOGOFF) " Link Cap100209} @{" [ H ]..............Help Page " Link Cap100210}
@{" [ J ]........Join Conference " Link Cap100211} @{" [ M ]......(COLOR/MONO) Mode " Link Cap100212}
@{" [ RZ].....Zmodem Upload " Link Cap100213} @{" [ ^ ]..Extended Help Command " Link Cap100214}
@{" [ N ]...New Files Since Date " Link Cap100215} @{" [ O ]..........Operator Page " Link Cap100216}
@{" [ Q ].............Quiet Node " Link Cap100217} @{" [ R ]..............Read Mail " Link Cap100218}
@{" [ RL ]...............ReLogon " Link Cap100219} @{" [ S ].Status of On-Line User " Link Cap100220}
@{" [ T ]...................Time " Link Cap100221} @{" [ U ].........Upload File(s) " Link Cap100222}
@{" [ V ].......View a Text File " Link Cap100223} @{" [ W ]..Write User Parameters " Link Cap100224}
@{" [ WHO ].....Node Information " Link Cap100225} @{" [ X ].....Expert Mode Toggle " Link Cap100226}
@{" [ Z ]......Zippy Text Search " Link Cap100227} @{" [ ZOOM ].........Zoo Mailing " Link Cap100228}
@{" [ CF ].Set Conference Config " Link Cap100229} @{" [ VO ]..........Voting Booth " Link Cap100230}
=======================================================================
@endnode
@node Cap100201 "[<][>] Fast Conference Joining Command"
=======================================================================
[ < ] - Joining Conference Up&Down:
[ > ] ~~~~~~~~~~~~~~~~~~~~~~~~~~
These two commands allows the user to join conferences by only using
the '<' '>' keys. This will let the user go up one conference and
down one conference. Example: User is in CONF. 3 and use the '>' key.
so he will automatically join the one higher conference he has access
to, and if he will use the '<' key again he will join CONF. 3 again.
=======================================================================
@endnode
@node Cap100202 "[ A ] - Alter File Flagging...."
=======================================================================
[ A ] - Alter File Flags:
~~~~~~~~~~~~~~~~
This command allows the user to change the flagged file list
without having to do a file listings and get a PAUSE...MORE
prompt to change the flags.
Chaining data is allowed, or the routine will prompt the user
for the information.
First it will show the current list of flags.
No file flags
Filename(s) to flag: (C)lear, (Enter)=none?
At this prompt the user can:
1. Enter new files to add to the flag list
2. Enter 'C' to goto the clear flag prompt
Filename(s) to Clear: (*)All, (Enter)=none?
At this prompt the user can:
1. Enter filenames to remove from the flag list,
WILDCARDS are valid, however they will only
remove the first entry.
2. Use '*' to remove all entries in the list.
3. Hit Return to exit.
Once a user exits the Clear prompt, it will once
again show the list of flagged files and drop back
to the MAIN MENU PROMPT.
=======================================================================
@endnode
@node Cap100203 "[ B ] - Bulletins reading...."
=======================================================================
[ B ] - Bulletins:
~~~~~~~~~
This command allows the user to view bulletins that the sysop
has made available.
- First, the BBS checks to see if the file
BBS:<CONF>/BULLETINS/BULLHELP.TXT is available; if not, it tells
the user that no bulletins are available in that conference.
- If the BBS:<CONF>/BULLETINS/BULLHELP.TXT is found, it is displayed
and the user is prompted to enter the bulletin # to view or '?' to
Redisplay the BULLHELP.TXT which is the bulletins menu.
- If a user selects a valid bulletin #, it is displayed and the BBS
returns back to the bulletin prompt.
- If a user selects an invalid bulletin #, the BBS informs the user
that there is no bulletin #{x} where {x} = the specified bulletin.
=======================================================================
@endnode
@node Cap100204 "[ C ] - Comment to Sysop...."
=======================================================================
[ C ] - Comment to Sysop:
~~~~~~~~~~~~~~~~
This command is exactly the same as the regular ENTER MESSAGE command
except that the message is addressed privately to the System-Operator.
The TO: field is automatically filled with the User name on SLOT 1,
which is the Sysop.
If the BBS located the tooltype "FORWARDMAIL= <str>" in the Conference
ICON is turned on, the Mail will be forwarded to the User named in
the <str>. This is very useful if you go to holiday and want your
co-sysop to read the messages to you without typing "R" for read
messages.
=======================================================================
@endnode
@node Cap100205 "[ D ] - Download File(s)...."
=======================================================================
[ D ] - Download File(s):
~~~~~~~~~~~~~~~~
This command accesses the file transfer procedure for sending files
from the system to the remote user. The flow-chart for this command
is quite complex and is outlined below:
1. If the ToolType NDIRS contains zero, the BBS informs the user
that there are no files to download from that conference.
2. The BBS displays the File BBS:CONF/DOWNLOADMSG.TXT
3. The BBS displays the users Download/Upload STATS.
4. The BBS calculates the ratio limits the user has before uploading
files to the system.
5. Next, it displays the transfer protocol the user take for default.
The User can change this protocols by using the "W" command.
6. If the user had specified 'DS' instead of just 'D' the download
is considered a sysop download and if the user is allowed to
use SYSOPDOWNLOAD, then the download can be made from any valid
AmigaDos path on the system. If this is the case, the BBS asks
for the full path and filename. NO WILDCARDS ARE ALLOWED with a
Sysop Download.
7. The BBS asks the user to enter the filename(s).
8. Checks for special characters in the filename like ":/" etc.
If found, tells the users that special symbols may not be included
when downloading.
9. Full WILDCARDS are allowed when doing a regular download, but just
the * WILDCARD character alone is not allowed.
10. Now, the BBS scans the specified paths from the CONF ICON and
when it finds the file that the user requested, it displays the
file length in Kbytes, time required to download it at current baud
rate, and checks if the user has enough credits to download the
file. If so, AmiExpress checks the filename against what is in
existing File Flag list and if it isn't already there, it adds it.
So, if the download sequence is aborted for any reason, just hitting
"D" again will download the flagged file. To remove from flaglist,
the user would use the 'A' command.
11. Now the BBS checks if there is an Comment at the File like
"RESTRICTED" or "FREE DOWNLOAD" ... if there is a Comment like this
then the BBS will display some messages when the File has a comment
like "RESTRICTED" it is not not allowed to download this file and
the BBS will write a comment into the BBS:NODE{x}/CALLERSLOG that a
user tried to download this File... and with this comment you can`t
download this file with a level of 255 and sysop download also.. so
the file is 100% safe for downloading... if there is the comment
"FREE DOWNLOAD" the BBS will make this file free download and it
will costs no credits to download it...
12. After hitting return alone on a filespec prompt, the BBS re-checks
the totals to see if the batch is within the user's limits.
13. If so, AmiExpress asks either to start, abort, or automatically
logoff at the end of the transfer. The 'G'oodbye after transfer
gives the user 10 seconds to change his mind after the transfer
before performing an automatic disconnect sequence.
14. At this point the download sequence is about to begin and so the
necessary information is written to the BBS:NODE{x}/UDLOG, if
turned on.
15. At the end of the download, if the users' security level is below
the one you choose for the tooltype KEEP_UPLOAD_CREDIT=<numb>, then
the user's number of downloads and number of bytes downloaded get
updated with the new download STATS.
16. At this point, the download sequence is completed, and the BBS tells
the user his new STATS before returning back to the MAIN MENU
PROMPT.
=======================================================================
@endnode
@node Cap100206 "[ E ] - Enter a Message...."
=======================================================================
[ E ] - Enter a Message:
~~~~~~~~~~~~~~~
This command allows the user to leave private or public mail to other
users on the system. There are several options with this command and
they are outlined below.
1. Asks for who to send it to. If a WILDCARD is used the search
will find the first user that fits the WILDCARD and will display
it and then ask if its correct, if the user says no then it
will search forward. If it doesn't find the user it will
exit back to the MainMenu prompt.
2. If the user just hits return on the TO: prompt it will send
the message to ALL.
3. A feature added in is to be able to leave a message to
"EALL" this means to EMAIL ALL people, this is only usable
by users you give access to writing EALL Messages by changing
the tooltype in the ACCESS ICON for the User. What this does is to
leave ONE message to ALL USERS , when a person calls
the system it searches for mail in that conference to that
user it will say they have mail, from the user that left the
"EALL" message. The TO: will show the user who is receiving
the message with "(ALL)" after their name. The message can
only be deleted by the sender or a user with SYSOP access
4. Another name that is valid in the TO: prompt is SYSOP, this
will be replaced by the Name of the SYSOP, in user slot 1
5. Next prompt is the Subject of the message, if the user just
hits return it will exit out of the enter message
6. The BBS will now ask if the message is to be readable only
by the receiver of the message or it will be public.
7. If you have the optional Full-Screen editor installed, the BBS will
now ask you whether you want to use the Full-Screen editor. The user
has the option what editor he/she wants with the 'W' command if the
sysop has chosen to have it so.
8. Now the user has entered the message editor. The following commands
assume you have entered the internal Line-Editor.
9. Tabs now work in the editor, they are indicated by a '|' in
the header.
10. CTRL-X in the message editor will delete the current line.
11. If you hit a return on a blank line you will exit the edit
to the edit command prompt.
12. The options are:
1. <A>bort - Abort entering the message
2. <C>ont - Continue entering the message, this option will
print the last line with text and put the cursor
at the end of the line.
3. <D>elete - Allows a user to delete a specific line.
4. <E>dit - Allows the user to change text within a line.
5. <F>ile - Allows a user with tooltype SYSOP_DOWNLOAD to attach
a file to download to the message. This option
will ask for the filename to attach to the message
and if you wanted the file deleted with the
message as its deleted.
6. <M>ci List- If you have a MCI Header in your Message, you are
able to use this function. This function will
display you the whole text with all MCI comment
in it.
7. <L>ist - List the message to the screen.
8. <S>ave - Saves the message.
9. <X>fer - Allows a User to upload a file into the MSGBASE
and make this file automatically ATTACHED at a
Message. To allow the user to do this he must
have the tooltype "ACS.PRI_MSGFILES" in his
ACCESS ICON. If the Message the User writes is
an ALL or EALL message the user must have
"ACS.PUB_MSGFILES" turned on to do this.
=======================================================================
@endnode
@node Cap100207 "[ F ] - File Listings...."
=======================================================================
[ F ] - File Listings:
~~~~~~~~~~~~~
This command allows a user to get Full directory listings of the
catalogs maintained by the BBS. As mentioned before, this is
specified in the Tooltype NDIRS=<numb> in the CONF ICON.
1. If the number of directories in the conference is zero
or NDIRS is zero, then the BBS will display
"No files available in this conference." And drop the user
back to the main prompt.
2. Displays the file BBS:CONF/FILEHELP.TXT only if
all the options were not specified on the command line.
3. It will then ask for the directory to list including the
'H'old directory. The hold directory can only be used
by a user with access greater than 200.
4. The specified directory will be displayed and will pause
if the NS hasn't already been specified, at the users
lines per screen point.
5. On the pause prompt, you can select 'F' for flagging files.
=======================================================================
@endnode
@node Cap100208 "[ FS ] - Full Status View...."
=======================================================================
[ FS ] - Full Status View:
~~~~~~~~~~~~~~~~
This option is used to allow the user to have a full view over his
access status in each conference. It will display Bytes Down/Uploaded
in each conference the user has access to and will display the RATIO
too.
=======================================================================
@endnode
@node Cap100209 "[ G ] - GoodBye (LOGOFF)...."
=======================================================================
[ G ] - Goodbye (LOGOFF):
~~~~~~~~~~~~~~~~
This option is used to end the current session with the host
system by the remote user. When the user hits 'G', the BBS
performs several clean-up functions.
1. First checks to see if there was a ZoomMail that hasn't
been downloaded, if there was it would ask if the user
wanted to leave anyway.
2. The system then checks to see if there were any partial
uploads that the user hasn't finished sending yet. If
so then it would let the user know and ask if he wanted
to leave anyway. If the user didn't want to leave, then
the BBS would ask if the user wanted to view the files.
If the user did want to view them, then the BBS would go
into the resume routine showing the user the filename
and filesize, then ask if he wanted to resume on that
particular file. If not then the BBS would ask if the user
wanted to delete the file. If the user didn't want to
delete the file then the BBS would go to the next file
that was to be resumed.
3. If the user hadn't specified the 'Q' at the ANSI color
prompt, or the SUPPRESS_QLOGON is given the BBS would
display the file: BBS:NODE{x}/LOGOFF.TXT.
4. Now the BBS will try to open a Module called "LOGOFF" or
"LOGOFF<node>". If the BBS will find such a module, it will
be started.
=======================================================================
@endnode
@node Cap100210 "[ H ] - Help Page...."
=======================================================================
[ H ] - Help:
~~~~
This command displays the on-line help text file for the user to
refer to.
At this command, the BBS looks for and displays the file :
BBS:BBSHELP.TXT and if not found will say that No help is
currently available.
=======================================================================
@endnode
@node Cap100211 "[ J ] - Join Conference...."
=======================================================================
[ J ] - Join Conference:
~~~~~~~~~~~~~~~
This command is used to switch from the current conference to
another conference that the user has access privilege to.
The BBS looks for the file BBS:NODE{x}/JOINCONF{SEC}.TXT and
tries to display it. If not found, it will print a message
informing the user that the file is missing.
Then, prompts the user to enter the number of the conference they
wish to join. If the user does not have access to the requested
conference, then the BBS will tell the user that they don't have
access to that conference.
If the user has access to the requested conference, AmiExpress
switches to that conference and checks for mail for the user, and
then display any appropriate bulletin files if they exist.
If the Option "RELATIVE_CONFERENCES" is turned on in the CONF.DEF
ICON the BBS will only display the Conferences which the User has
access to.
=======================================================================
@endnode
@node Cap100212 "[ M ] - Mode Select...."
=======================================================================
[ M ] - Mode Select:
~~~~~~~~~~~
This command switches between ANSI color output or Plain Monochrome
output on the users end. When ANSI is on, the BBS tries to display
files that have the extension by default. The normal plain
(.TXT) files are reverted to if extension files are not
found.
=======================================================================
@endnode
@node Cap100213 "[ RZ ] - Zmodem Upload Command...."
=======================================================================
[ RZ ] - Zmodem Upload Command:
~~~~~~~~~~~~~~~~~~~~~
This command executes an immediate Zmodem upload.
=======================================================================
@endnode
@node Cap100214 "[ ^ ] - Extended Help Command...."
=======================================================================
[ ^ ] - Extended Help Command:
~~~~~~~~~~~~~~~~~~~~~
This command allows a user to read the help files that yu have put in the
BBS:help directory. The help commands may include MCI commands,
like displaying UserNames to personalize the help commands or some other
data over MCI.
=======================================================================
@endnode
@node Cap100215 "[ N ] - New Files Since Date...."
=======================================================================
[ N ] - New Files Since Date:
~~~~~~~~~~~~~~~~~~~~
This command allows the user to list files from a specified date onwards
or from the last time they called the system. In other words, with
this command, users can see what the system has to offer in terms of
files since their last call.
1. If the number of directories in the conference is zero
then the BBS will display "No files available in this
conference." And drop the user back to the main prompt.
2. It will then ask for the date they want to list from.
The last date they were on will be the default, this is
selected by just hitting return alone. Entering the date
to list from must be done as MM-DD-YY.
3. Next, the BBS asks for the directory to search thru. An 'A'
can be used to list all directories, also 'U' can be
specified for the upload directory. And H for the hold
directory. The hold directory can only be used by a user
with access greater than 200.
4. The Pause prompt works the same as described in the file
listing section.
=======================================================================
@endnode
@node Cap100216 "[ O ] - Operator Page...."
=======================================================================
[ O ] - Operator Page:
~~~~~~~~~~~~~
This command is used by the remote user to call the system operator
for on-line chat.
1. First of all Express will check the SysopPageCounter to see if
the user already paged the sysop. If the user paged the sysop
more then the given maximum number, express will automatically go to
comment writing instead of paging the sysop.
2. If the User is calling up the system operator for the first time
on the current session, the users name field will be changed to a red
color when 3 bitplanes are active, and will have star preceding
his name if the BBS was booted in 1 bitplane. Also, if the
ICONFIED window is active, the name filed there will also be
highlighted a different color. In this way, a sysop can see if
the user on-line has requested to chat.
3. If the F7 Chat toggle flag is not set to allow paging
then the BBS says:
"Sorry, The SYSOP, is not around right now
You can use 'C' to leave a comment."
4. If the chat toggle flag is set to allow paging, then the
BBS adds to BBS:NODE{x}/CALLERSLOG that the user paged,
Then displays "Paging SYSOP (CTRL-C to Abort). ." followed
by bells and more dots.
5. If you, the SYSOP, wanted to chat with the user you would
Hit F1 to enter chat, then AmiExpress looks for the file
BBS:NODE{x}/STARTCHAT.TXT, and if found displays
it to the user. This can be a simple greeting to the user.
If this file is not found, then the standard sysop chat
active message is sent to the screen. The same F1 will exit
chat when you are finished and the BBS will display the File
BBS:NODE{x}/ENDCHAT.TXT. During chat, if ANSI mode is
selected, your text will be a different color than the user ones.
=======================================================================
@endnode
@node Cap100217 "[ Q ] - Quiet Node...."
=======================================================================
[ Q ] - Quiet Node:
~~~~~~~~~~
This command will change the Quiet Node option you choose for a node.
With this command a user can prevent other users from seeing them on
a node and can make him/herself like invisible.
=======================================================================
@endnode
@node Cap100218 "[ R ] - Read Mail...."
=======================================================================
[ R ] - Read Mail:
~~~~~~~~~
This command is used to access the on-line mailing system to read
mail either to the user or for all users. It is also used when a
certain message will be replied to.
1. First the BBS shows the read prompt
MSG. Options: A,D,F,R,Q,?,<CR> ( QUIT )>:
(1). <A>gain, displays the message currently on again.
(specified by the 'a' in the above line)
(2). <D>elete, allows the user to delete a message only
if he left the message or the message is to him.
Also a user with access of 210+ can delete any
mail.
(3). <F>ile, will test if there is any Attached File to
download.
(4). <R>eply, allows the user to reply to the current message.
The BBS will place the user on the SUBJECT: field
with the previous subject and place the cursor on
the end of the line. If the user wants to change
the subject he can delete over the existing subject
and enter a new one, or hitting return will keep the
old subject.
After this, the BBS will ask if the reply should
be private, and by default this is set to No.
Next, the BBS will ask whether to quote the current
message in the reply, again the default is No.
If the user selected Yes to quote the message, the
entire message will be re-displayed and the BBS will
prompt the user with the following:
Enter Startline,Endline or (*=ALL, A=Abort):
Where the user would have to type either a '*' to
quote the whole message specify start and end
lines separated by a comma.
Then the user would be put in the on-line message
editor to enter his message. Commands for the editor
work in much the same way as the Enter Message
command. For more information, please re-read the
ENTER MESSAGE Command.
(5). <?>, this will display the full description of the packed
Mail Reading line and will help you.
(6). <CR=Next>, let you continue search for new messages.
(7). "EH" - This allows the sysop to edit a message
Header. You can change who the MSG is to,
from, the subject and whether it is to be
a private message or not.
(8). "U" - This will let the sysop go automatically to account
editing for the account the message is from. With this way
you can fast validate a NEWUSER by reading the message and
go to account editing.
=======================================================================
@endnode
@node Cap100219 "[ RL ] - RELOGON...."
=======================================================================
[ RL ] - RELOGON:
~~~~~~~
This command will make a RELOGON at the Node you start it. This will
drop the user back to the Normal LOGON and will start a Module called
"RELOGON" or "RELOGON<node>" in SYSCMD Directory. If this Module
is available it will be started and if it is finished the user will
be dropped back to the LogonString.
=======================================================================
@endnode
@node Cap100220 "[ S ] - Status of On-Line User...."
=======================================================================
[ S ] - Status of On-Line User:
~~~~~~~~~~~~~~~~~~~~~~
This command simply reports the users' current information pertaining
to his account. This is in the form of:
Caller Num.: 2049
Lst Date On: 05-14-93
Security Lv: 30
# Times On : 579
Ratio DL/UL: Disabled
Online Baud: 16800
Rate CPS UP: 0
Rate CPS DN: 0
Screen Clr: NO
Protocol : /X Zmodem
Sysop Pages Remaining: 3
Uploads Downloads
Conf Files Bytes Files Bytes Bytes Avail Ratio
---- ------- --------- ------- --------- ----------- -----
2> 0 0 0 0 0 DSBLD
=======================================================================
@endnode
@node Cap100221 "[ T ] - Time, at the system site...."
=======================================================================
[ T ] - Time, at the system site:
~~~~~~~~~~~~~~~~~~~~~~~~
This command reports back to the user what the internal battery backed
up clock at the BBS site is set at. Local time/date stamp function.
=======================================================================
@endnode
@node Cap100222 "[ U ] - Upload File(s)...."
=======================================================================
[ U ] - Upload File(s):
~~~~~~~~~~~~~~
This command puts the BBS in the file receive mode, where the remote
user can send files to the system.
1. The BBS first checks to see if there are file directories to be
uploaded to, by looking at NDIRS=<numb> tooltype. If this type is
unavailable or reports zero, the user is returned back to the
MAIN MENU PROMPT after a message stating "No files available in this
conference."
2. If a file called BBS:CONF/UPLOADMSG.TXT exists
the BBS displays that to the user.
3. The BBS now calculates free disk space, the first number
displayed, is the amount of free space on all the drives
listed in DRIVES.DEF.INFO in BBS: directory.
Only drives that contain download files for the BBS
should be included, this way the user knows how much
free space is left on the total system.
The second number displayed is the amount of free space
only in the BBS:CONF/UPLOAD directory. This is so the
BBS and the user know exactly how much space is available
to receive uploads until the sysop does some maintenance.
Currently the BBS is content to allow uploads until the
free space in BBS:CONF/UPLOAD is less than 2,000,000 bytes.
4. At this point the BBS calls the resume routine to check
if there are any files to resume on, this works the same way
as explained under the 'G'oodbye command.
5. The BBS will then ask the user to enter the filenames of the
files he will be uploading, or he can press return alone to
have Zmodem tell the BBS the names. Specifying an 'A' will
abort out of an upload altogether and drop the user back to the
main prompt.
6. If the user enters the filenames, the BBS will check to make
sure they don't already exist in the conference, if not the
BBS will ask him to enter the description for each file.
Entering a blank line will end the description.
7. Next the BBS will display:
(Enter) to Start, (G)oodbye after transfer, (A)bort?
this works the same as specified in the download routines.
At this point the Sysop is able to press "L" for start a
local upload routine, which will pop up a Requester for
selecting files to upload LOCAL into the BBS without starting
the ZMODEM Transfer over the Serial In/Output.
8. At this point if the user has not been added to the end of
BBS:NODE{x}/UDLOG he will be.
9. If the Upload is now to be started the BBS will check in the file
you specified for the FILESNOTALLOWED=<pathname> option in the NODE
ICON. If this file is not allowed to be uploaded it will skip
the upload.
10. The BBS then displays the STATS from the transfer for all the
files.
11. The users time is then credited for the uploads.
12. Next the BBS goes thru the files sent and checks to see if
the name is longer than 12 characters, if so the BBS asks
the user to rename the file.
13. The BBS then checks to see if the user has already given
the descriptions for the file, if so it posts it accordingly.
14. If the user has not already given the description for the file the BBS
asks for the description of the file. Again giving 8 lines
for the description.
15. If the user gets disconnected while entering the description
the BBS will put "LOSS CARRIER" for the description.
and place the file in the BBS:CONF/LCFILES directory,
along with a Comment in the <usernumber>.lc which will contain
a list of all the files he will need to enter descriptions for
when he calls back. The Re-Enter description process is
done at LOGON with the PartUploads routine.
16. Once the description has been entered, the BBS checks if there
is a door called "FILECHECK" in the SYSCMD directory, if so it will
be executed and this internal "FCHECK" will be used. This is
where you can use a multiple type of file checker for all formats.
If the door doesn`t exists express will check if there is a
file extension. (a file extension is usually on 3 characters
preceded by a '.'. (IE:.DMS,.LHA.)).
Express now compares the extension with any ICON
of the same extension name in the BBS:FCHECK directory.
ICONS in the FCHECK directory specify that you are using
external file checkers. The format for each ICON has been
mentioned below.
If no external checker exists for the file then it
will be posted with a comment "N" for non checked.
17. If the archive is checked and it passes the BBS puts
a 'P' between the filename and filesize in the listing.
18. If the archive is checked and if found bad then the BBS
puts a 'F' between the filename and filesize in the listing.
19. If the file is not one of the above checkable file types
then the BBS puts a 'N' between the filename and the
filesize in the listing.
20. Now the BBS will post the file in the listings area. If the
user specified a '/' at the beginning of the description
for the file, or the file failed archive check, or the
user got disconnected then the BBS posts the file to the
end of BBS:CONF/HOLD/HELD If the archive passed or wasn't
checkable and the user didn't specify a '/' at the beginning
of the description then the BBS will post the file to the
end of BBS:CONF/DIR{U} where U is the upload directory (or
the highest directory available).
21. If when the BBS goes to move the file, like to the hold
directory and there is already a file in the hold with the
same name, the BBS will add a '_' to the end of the filename
until it can be renamed.
22. Once all the file are exhausted the BBS checks to make sure
there aren't any free floating files in the BBS:NODEx/PLAYPEN
directory, if there are the BBS then moves the files to
BBS:CONF/PARTUPLOAD as partially uploaded files from the
current user ONLINE.
=======================================================================
@endnode
@node Cap100223 "[ V ] - View a Text File...."
=======================================================================
[ V ] - View a Text File:
~~~~~~~~~~~~~~~~
This command allows the user to view the contents of a TEXT file
located in the BBS:CONFNAME/UPLOAD directory. For Co-Sysop's with
Access to SYSOP_VIEW in Access ICONS, TEXT files can be viewed
from any valid system path.
1. The BBS first checks to see if there are file Dirs in that CONF.
by looking in the tooltype NDIRS=<numb>. If this type is unavailable or
reports zero, the user is returned back to the MAIN MENU PROMPT
after a message stating "No files available in this conference."
2. The BBS then asks the user for the filename to view.
3. If the user has ACCESS to the SYSOP_VIEW Option and he specified
'VS' instead of just 'V' then the BBS will allow the filename to
include the path. The sysop view is noted at the end
of BBS:NODE{x}/CALLERSLOG what file was viewed.
4. The BBS then displays the file as long as the characters
in the file are < 128 in value. If a character is
greater than 127 then the BBS says "This file is not a
text file." And drops back to the main prompt.
NOTE: If a file has a comment of RESTRICTED then the user
~~~~ will not be able to view the file. If an attempt was
made then the users name will be annotated in the
BBS:NODE{x}/CallersLog
=======================================================================
@endnode
@node Cap100224 "[ W ] - Write User Parameters...."
=======================================================================
[ W ] - Write User Parameters:
~~~~~~~~~~~~~~~~~~~~~
This command allows the user to change some personal items pertaining
to his account on the system.
When called, this command brings up the following:
1. LOGIN NAME..............ByteMaster
2. REAL NAME...............Joseph Hodge
3. INTERNET NAME...........jhodge
4. LOCATION................Radford, Va.
5. PHONE NUMBER............603-555-1212
6. PASSWORD................ENCRYPTED
7. LINES PER SCREEN........23
8. COMPUTER................Amiga 2000/GVP030
9. SCREEN TYPE.............Amiga Ansi
10. SCREEN CLEAR............Yes
11. TRANSFER PROTOCOL......./X Zmodem
12. EDITOR TYPE.............Prompt
13. ZOOM TYPE...............QWK
14. AVAILABLE FOR CHAT/OLM..Yes
Which to change <CR>= QUIT ?
At this prompt, the user can select which item to change, or hit
return alone to exit from this routine.
The first four items can be security set by the Config program so
that users without the necessary security cannot change their
Name, Location, Phone or Password. For more information, refer to the
documentation for the AmiConfig program.
=======================================================================
@endnode
@node Cap100225 "[ WHO ] - Node Information...."
=======================================================================
[ WHO ] - Node Information:
~~~~~~~~~~~~~~~~
This command shows the user which users are ONLINE on the other nodes
and what they are doing actually. If you choose QUIETNODE for a
specified node, this node will be skipped in displaying this
information.
=======================================================================
@endnode
@node Cap100226 "[ X ] - Expert Mode Toggle...."
=======================================================================
[ X ] - Expert Mode Toggle:
~~~~~~~~~~~~~~~~~~
This command allows the user to switch between eXpert and Novice mode
where expert mode will not display the menu unless a '?' is specified
at the command line and Novice will Redisplay the menu after every
command issued and completed.
=======================================================================
@endnode
@node Cap100227 "[ Z ] - Zippy Text Search...."
=======================================================================
[ Z ] - Zippy Text Search:
~~~~~~~~~~~~~~~~~
This command allows the user to scan thru all the BBS:CONFNAME/DIR{x}
files for a match for a specified string.
When it finds a match, it displays the whole filespec including the
description.
If the NDIRS=<numb> tooltype reports zero or does not exist, then
zippy search will not be functional.
=======================================================================
@endnode
@node Cap100228 "[ ZOOM ] - Zoo Mail...."
=======================================================================
[ ZOOM ] - Zoo Mail:
~~~~~~~~
Zoo mail has been reinstalled into Ami-Express and now relies
on current compression schemes provided by modem manufacturers
instead of Zoo, as zoo has a tendency to crash the Amiga
in certain instances. ZOOM will compile all the user's unread
mail, (in LHA format if requested) from ALL accessible conferences
into a freely downloadable file that will be automatically added
to the flaglist for downloading.
=======================================================================
@endnode
@node Cap100229 "[ CF ] - Set Conference Configuration...."
=======================================================================
[ CF ] - Set Conference Configuration:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This command will allow your users to set the way express handles
conferences. From here they can set the 'NEW FILE SCAN',
'NEW MESSAGE SCAN', and turn 'OFF' and 'ON' what conferences they
want to ZOOM mail from.
In the Conference Maintenance option in the Account editor you can
also Globally set these options (F5).
=======================================================================
@endnode
@node Cap100230 "[ VO ] - Voting Booth...."
=======================================================================
[ VO ] - Voting Booth:
~~~~~~~~~~~~
This Command requires ACS.MODIFY_VOTE for SYSOPS and ACS.VOTE
for the users in the access icon.
NOTE: with the VOTING BOOTH a directory called VOTE will automatically
be created in the conference directory when you initialize a voting
booth for a conference.
The voting booth can have up to 25 topics per conference, each
topic can have up to 99 multiple choice questions to it.
Also there is a new option to the Conference Maintenance screen called
RESET VOTING BOOTH, when this is run it will zero out the bits in the
CONF.DB that keeps track of which voting topics a user has already
voted on. You should do this for each conference that you plan on
having a voting booth in.
The Voting booth is conference based, meaning that one conference
cannot share the voting booth of another conference.
To setup a Voting Booth for a conference simply reset the voted
flags in the CONF.DB via conference maintenance then:
1. type 'VO' from the menu prompt.
2. Select the 'CREATE VOTE TOPIC' menu option.
(REMEMBER you must have ACS.MODIFY_VOTE access for this to work)
3. You will be prompted to enter a TOPIC NUMBER this number can
range from 1 - 25, you will probably want to start with '1'.
4. You will now be prompted for a ONE LINE DESCRIPTION of the
TOPIC. Then you can save, edit, abort, list, delete etc.
5. Next you will be asked for the QUESTIONS OF THE TOPIC. YOU CAN
have up to 99 questions per TOPIC.
6. After you are finished entering a question then enter 'S' for
save in order for it to ask you for the multiple choice options.
You can have up to 25 multiple choice options per question.
7. When you are finished entering 1 choice, then press return and
save to submit it and go onto the next choice.
8. When you are finished entering choices the when prompted for the
next choice , simply press save, this will prompt you for the
next question.
9. If you have no more questions, then press ABORT at the QUESTION
prompt.
10. This should bring you back to the VOTE MAINTENANCE MENU.
11. At the VOTE MAINTENANCE MENU, you can also edit a vote, topic,
etc. In case you made a mistake.
NOTE:
Concerning the voting booth. After you setup a TOPIC you cannot add
questions to that topic once it is created, when a user votes on a
topic they must vote on all questions in the topic for it to be
considered a valid vote. This is handled automatically in that once
they are in the TOPIC voting process, they cannot get out of it until
they answer all the questions for that topic, if they loose carrier
while answering the questions, then the answers for that topic will
be discarded and the user will have to re-vote on the topic when they
log back on. In other words, the questions for a topic are not
updated until the user answers all questions in that topic.
=======================================================================
@endnode
@node Cap11 "AREXX Interface MODULES (AIM)...."
=======================================================================
AmiExpress HOST Addresses
~~~~~~~~~~~~~~~~~~~~~~~~~
AmiExpress allows the use of external HOST Addresses to start Modules,
which can be executed by the user by a specified key. These host
addresses can be used by programmers to code Modules working with
AmiExpress. These HOST Addresses can be used in many programming languages
(AREXX,C,ASSEMBLER Aso.). To give the programmer more abilities,
AmiExpress provides many COMMANDS via the HOST Address to get and put
Information to the running AmiExpress nodes. These commands are
shared in different areas.
@{" Standard HOST Commands " Link Cap1101} @{" Special Arexx HOST Cmds (AIM)" Link Cap1102}
@{" Traditional HOST Cmds (TIM)" Link Cap1103} @{" AmiExpress Interface (XIM)" Link Cap1104}
@{" AmiExpress Script HOST (SIM)" Link Cap1105} @{" AmiExpress CLI Interface(XIM)" Link Cap1106}
=======================================================================
@endnode
@node Cap1102 "Special Arexx HOST Cmds (AIM)...."
=======================================================================
The Arexx door interface requires a file called REXXDOOR, It must be
located in your UTILS: path. This will also require an icon to run the
door(s) in your BBSCmd or CONF{x} and to be located in the BBS:Commands
directory. REXXDOOR will be launched each time an Arexx door is
requested. Arexx must also be set up on your amiga system correctly to
work with /X. First you must have all the necessary Arexx files installed,
EXAMPLE in your DH0:Rexxc dir. Then in your startup-sequence make sure
this line exists:
Assign >NIL: REXX: SYS:REXXC
Next, (I put mine in the user-startup) add these lines:
Rpstart >Nil:
Your system is now Arexx ready.
NOTE: If a CARRIER LOSS is detected or a keyboard TIMEOUT is detect then
~~~~ an error code of 10 will be sent to the Arexx Script and REXXDOOR
will orderly close any ports to the BBS and itself from the Arexx
Script.
Now we want to discuss all the Arexx Commands which can be used to
read & write information of the User & the BBS. These Arexx commands
are only useful if you want to program some tools for AmiExpress, and
for that it is very hard to understand for a guy who never programmed
Arexx. But now lets go on:
NOTE: These are internal and do not pertain to the Module Glue routines
~~~~ for designing doors.
To register an AREXX Module to AmiExpress you must have the following
lines at first at your AREXX Modules:
------ cut here ------
/* Arexx Module TEST */
parse arg NODE
options results
address value "AERexxControl"NODE
------ cut here ------
Without this Command at the first lines in your modules, the modules
will not work together with AmiExpress, so be sure you have these
Command at the beginning of each AIM Module.
The following Commands are AmiExpress Arexx HOST Commands which are
used to give the ability to the programmer to design his modules.
To use this Command the Initializing of AmiExpress Module must be
made as listed above.
COMMAND NAME FUNCTION
=========================================================================
GETUSER <x> This command will read DATA from the FUNCTION <x> of the
decimal HOST Commands. This DATA will be transferred to
the normal RESULT function of AREXX. With this command
you are able to get the BBSNAME or other things.
For more Information about the FUNCTION numbers, please
look at the 'Standard HOST Commands' of Express.
=========================================================================
PUTUSER <x> This command is exactly the same as the GETUSER command
with the difference that it will store DATA and not read
it from the FUNCTION <x>. To store the DATA to a
FUNCTION <x> you also need the PUTUSTR together with
PUTUSER because PUTUSER must know what to store into the
FUNCTION <x>.
=========================================================================
PUTUSTR <x> This Arexx command will define the DATA depending to the
PUTUSER command for the HOST commands of AmiExpress
Use these TWO Arexx HOST Commands together to execute
Commands which belongs to Express.
example:
PUTUSTR "g" <- the variable you want to put into the
PUTUSER 136 <- FUNCTION 136.
These two commands together will execute the internal
GOOD-BYE Main Menu Command and will leave the BBS.
The '136' depending on the other HOST COMMANDS programmed
with decimal Codes.
=========================================================================
TRANSMIT "" This command is the most important HOST Command of
the AREXX HOST Commands of AmiExpress. This command
will send text over the serial depending in "" to
the NODE Window the module was executed.
example:
TRANSMIT "HELLO"
Now HELLO should appear in the NODE Window the Module
was executed.
=========================================================================
SENDMESSAGE This Command is exactly the same as the TRANSMIT command
with the only difference that it will not send an carriage
return after executing the command, so you can store
text behind other text.
=========================================================================
GETCHAR This Command will wait for input from the User to insert
and this input will be later transferred to the RESULT
Command of normal AREXX. With this command you are able
to ask the user questions and transfer the answer to
different variables.
=========================================================================
PROMPT "" This Command is the mix of the TRANSMIT & GETCHAR
commands. After displaying the TEXT in the "" it will
PROMPT the user to insert something until he pressed
return. Then the DATA will go to the normal RESULT
routine of AREXX.
=========================================================================
@endnode
@node Cap1101 "Standard AmiExpress HOST Commands...."
=========================================================================
Standard AmiExpress HOST Commands
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The following list is a list of all AmiExpress HOST Commands which
can be used in every program language to get/store information to the
AmiExpress Host Port. With this Command you can get Information
like BBSNAME, USERNAME etc. Click on the Buttons for more Information.
@{" JH_LI <Func: 000> " Link Cap1101000} @{" JH_REGISTER <Func: 001> " Link Cap1101001}
@{" JH_SHUTDOWN <Func: 002> " Link Cap1101002} @{" JH_WRITE <Func: 003> " Link Cap1101003}
@{" JH_SM <Func: 004> " Link Cap1101004} @{" JH_PM <Func: 005> " Link Cap1101005}
@{" JH_HK <Func: 006> " Link Cap1101006} @{" JH_SG <Func: 007> " Link Cap1101007}
@{" JH_SF <Func: 008> " Link Cap1101008} @{" JH_EF <Func: 009> " Link Cap1101009}
@{" JH_CO <Func: 010> " Link Cap1101010} @{" JH_BBSNAME <Func: 011> " Link Cap1101011}
@{" JH_SYSOP <Func: 012> " Link Cap1101012} @{" JH_FLAGFILE <Func: 013> " Link Cap1101013}
@{" DT_NAME <Func: 100> " Link Cap1101100} @{" DT_PASSWORD <Func: 101> " Link Cap1101101}
@{" DT_LOCATION <Func: 102> " Link Cap1101102} @{" DT_PHONENUMBER <Func: 103> " Link Cap1101103}
@{" DT_SLOTNUMBER <Func: 104> " Link Cap1101104} @{" DT_ACCESSLEVEL <Func: 105> " Link Cap1101105}
@{" DT_RATIOTYPE <Func: 106> " Link Cap1101106} @{" DT_RATIO <Func: 107> " Link Cap1101107}
@{" DT_COMPTYPE <Func: 108> " Link Cap1101108} @{" DT_MESSAGESPOSTED<Func: 109> " Link Cap1101109}
@{" DT_UPLOADS <Func: 110> " Link Cap1101110} @{" DT_DOWNLOADS <Func: 111> " Link Cap1101111}
@{" DT_TIMESCALLED <Func: 112> " Link Cap1101112} @{" DT_TIMELASTON <Func: 113> " Link Cap1101109}
@{" DT_TIMEUSED <Func: 114> " Link Cap1101114} @{" DT_TIMELIMIT <Func: 115> " Link Cap1101115}
@{" DT_TIMETOTAL <Func: 116> " Link Cap1101116} @{" DT_BYTESUPLOAD <Func: 117> " Link Cap1101117}
@{" DT_BYTEDOWNLOAD <Func: 118> " Link Cap1101118} @{" DT_DAILYBYTELIMIT<Func: 119> " Link Cap1101119}
@{" DT_DAILYBYTEDLD <Func: 120> " Link Cap1101120} @{" DT_EXPERT <Func: 121> " Link Cap1101121}
@{" DT_LINELENGTH <Func: 122> " Link Cap1101122} @{" ACTIVE_NODES <Func: 123> " Link Cap1101123}
@{" DT_DUMP <Func: 124> " Link Cap1101124} @{" DT_TIMEOUT <Func: 125> " Link Cap1101125}
@{" BB_CONFNAME <Func: 126> " Link Cap1101126} @{" BB_CONFLOCAL <Func: 127> " Link Cap1101127}
@{" BB_LOCAL <Func: 128> " Link Cap1101128} @{" BB_STATUS <Func: 129> " Link Cap1101129}
@{" BB_MAINLINE <Func: 131> " Link Cap1101131} @{" RETURNCOMMAND <Func: 136> " Link Cap1101136}
@{" ZMODEMSEND <Func: 137> " Link Cap1101137} @{" ZMODEMRECEIVE <Func: 138> " Link Cap1101138}
@{" SCREEN_ADDRESS <Func: 139> " Link Cap1101139} @{" BB_TASKPRI <Func: 140> " Link Cap1101140}
@{" RAWSCREEN_ADDRESS<Func: 141> " Link Cap1101141} @{" BB_CHATFLAG <Func: 142> " Link Cap1101142}
@{" DT_STAMP_LASTON <Func: 143> " Link Cap1101143} @{" DT_STAMP_CTIME <Func: 144> " Link Cap1101144}
@{" DT_CURR_TIME <Func: 145> " Link Cap1101145} @{" DT_CONFACCESS <Func: 146> " Link Cap1101146}
@{" BB_NODEID <Func: 149> " Link Cap1101149} @{" BB_CALLERSLOG <Func: 150> " Link Cap1101150}
@{" BB_UDLOG <Func: 151> " Link Cap1101151} @{" EXPRESS_VERSION <Func: 152> " Link Cap1101152}
@{" BB_CHATSET <Func: 162> " Link Cap1101162} @{" ENVSTAT <Func: 163> " Link Cap1101163}
@{" NODE_DEVICE <Func: 503> " Link Cap1101503} @{" NODE_UNIT <Func: 504> " Link Cap1101504}
@{" NODE_BAUD <Func: 505> " Link Cap1101505} @{" JH_MCI <Func: 507> " Link Cap1101507}
@{" PRV_COMMAND <Func: 508> " Link Cap1101508} @{" BB_CONFNUM <Func: 510> " Link Cap1101510}
@{" BB_DROPDTR <Func: 511> " Link Cap1101511} @{" BB_GETTASK <Func: 512> " Link Cap1101512}
@{" NODE_BAUDRATE <Func: 516> " Link Cap1101516} @{" BB_LOGONTYPE <Func: 517> " Link Cap1101517}
@{" BB_SCRLEFT <Func: 518> " Link Cap1101518} @{" BB_SCRTOP <Func: 519> " Link Cap1101519}
@{" BB_SCRWIDTH <Func: 520> " Link Cap1101520} @{" BB_SCRHEIGHT <Func: 521> " Link Cap1101521}
@{" BB_PURGELIN <Func: 522> " Link Cap1101522} @{" BB_PURGELINESTART<Func: 523> " Link Cap1101523}
@{" BB_PURGELINEEND <Func: 524> " Link Cap1101524} @{" BB_NONSTOPTEXT <Func: 525> " Link Cap1101525}
@{" BB_LINECOUNT <Func: 526> " Link Cap1101526} @{" DT_LANGUAGE <Func: 527> " Link Cap1101527}
@{" DT_QUICKFLAG <Func: 528> " Link Cap1101528} @{" DT_GOODFILE <Func: 529> " Link Cap1101529}
=========================================================================
@endnode
@node Cap1101000 "JH_LI <Func: 000>"
=========================================================================
JH_LI Requests a string of information from the user with a
default string.
msg->Command = 0
msg->String = default result string
msg->Data = Maximum length of response.
msg->Data will be set to a -1 if a loss carrier or console
TIMEOUT occurs, otherwise MSG->Data will be 1
msg->String will be the response string from the user.
(FUNCTION #: 0 )
=========================================================================
@endnode
@node Cap1101001 "JH_REGISTER <Func: 001>"
=========================================================================
JH_REGISTER Registers a door or XIM with the current node.
msg->Command = 1
This must be the first command issued to the express node.
This increments the number of doors active for the current
node.
(FUNCTION #: 1 )
=========================================================================
@endnode
@node Cap1101002 "JH_SHUTDOWN <Func: 002>"
=========================================================================
JH_SHUTDOWN Tells the node that a door is shutting down, this decreases
the number of active doors indicator , which once at 0,
the AEDoorPort will close.
msg->Command = 2
msg->Data = N/A
(FUNCTION #: 2 )
=========================================================================
@endnode
@node Cap1101003 "JH_WRITE <Func: 003>"
=========================================================================
JH_WRITE Allows you to send a text string to the user.
msg->Command = 3
msg->String = text
msg->Data = N/A
(FUNCTION #: 3 )
=========================================================================
@endnode
@node Cap1101004 "JH_SM <Func: 004>"
=========================================================================
JH_SM Allows you to send a text string to the user.
msg->Command = 4
msg->String = text
msg->Data = 1 or 0
if msg->Data = 1, then a CR/LF combination will be sent.
(FUNCTION #: 4 )
=========================================================================
@endnode
@node Cap1101005 "JH_PM <Func: 005>"
=========================================================================
JH_PM Allows you to prompt the user for a specified number of
characters.
msg->Command = 5
msg->String = prompt string
msg->Data = maximum response length.
if msg->Data = -1, then a loss carrier has occurred or a
TIMEOUT condition has occurred, otherwise msg->Data = 1.
msg->String will be the user response.
(FUNCTION #: 5 )
=========================================================================
@endnode
@node Cap1101006 "JH_HK <Func: 006>"
=========================================================================
JH_HK Allows you to get a 1 character response from the user.
msg->Command = 6
msg->String = text
msg->Data = N/A
if msg->Data = -1, then a loss carrier has occurred or a
TIMEOUT condition has occurred, otherwise msg->Data = 1.
msg->String will be the result string.
(FUNCTION #: 6 )
=========================================================================
@endnode
@node Cap1101007 "JH_SG <Func: 007>"
=========================================================================
JH_SG Allows you to display a text file to the user.
msg->Command = 7
msg->String = part file name.
msg->Data = N/A
ie:
msg->String = "BBS:Node1/Bull
This would try to display BBS:Node1/BULL.TXT
also takes into account language specifications.
This also searches for the access level patterns, ie:
Bull10.TXT, Bull100.TXT
(FUNCTION #: 7 )
=========================================================================
@endnode
@node Cap1101008 "JH_SF <Func: 008>"
=========================================================================
JH_SF Allows you to display a text file to the user.
msg->Command = 8
msg->String = Complete pathname
msg->Data = N/A
ie:
msg->String = "BBS:Node1/BULL.TXT"
This would show the file if it exists.
(FUNCTION #: 8 )
=========================================================================
@endnode
@node Cap1101009 "JH_EF <Func: 009>"
=========================================================================
JH_EF Allows you to use the internal msgbase editor to edit your
own files.
msg->Command = 9
msg->String = Complete pathname
msg->Data = 0
if msg->Data = -1, then a loss carrier has occurred or a
TIMEOUT has occurred, otherwise msg->Data will be 1.
(FUNCTION #: 9 )
=========================================================================
@endnode
@node Cap1101010 "JH_CO <Func: 010>"
=========================================================================
JH_CO Allows you to send text string to the console only.
msg->Command = 10
msg->String = text
msg->Data = 1 or 0
if msg->Data = 1, then a CR/LF combination will be sent in
addition to the text.
(FUNCTION #: 10 )
=========================================================================
@endnode
@node Cap1101011 "JH_BBSNAME <Func: 011>"
=========================================================================
JH_BBSNAME Allows you to retrieve the BBS Name.
msg->Command = 11
msg->Data = N/A
msg->String will be the BBS name.
(FUNCTION #: 11 )
=========================================================================
@endnode
@node Cap1101012 "JH_SYSOP <Func: 012>"
=========================================================================
JH_SYSOP Allows you to retrieve the Sysop's Name.
msg->Command = 12
msg->Data = N/A
msg->String will be the Sysop name.
(FUNCTION #: 12 )
=========================================================================
@endnode
@node Cap1101013 "JH_FLAGFILE <Func: 013>"
=========================================================================
JH_FLAGFILE Allows you to add files to the list of flagged files.
msg->Command = 13
msg->String = FileName
msg->Data = N/A
Adds the msg->String to the list of flagged files for
downloading purposes,
NOTE: The files must be in the download path for this to
work.
(FUNCTION #: 13 )
=========================================================================
@endnode
@node Cap1101100 "DT_NAME <Func: 100>"
=========================================================================
DT_NAME Allows you to retrieve or change users name/handle
msg->Command = 100
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be the name.
if msg->Data = 0, then name will be msg->String
(FUNCTION #: 100 )
=========================================================================
@endnode
@node Cap1101101 "DT_PASSWORD <Func: 101>"
=========================================================================
DT_PASSWORD Allows you to retrieve or change users password
msg->Command = 101
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be the password.
if msg->Data = 0, then the password will be msg->String.
(FUNCTION #: 101 )
=========================================================================
@endnode
@node Cap1101102 "DT_LOCATION <Func: 102>"
=========================================================================
DT_LOCATION Allows you to retrieve or change users location
msg->Command = 102
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be the location
if msg->Data = 0, then the location will be msg->String
(FUNCTION #: 102 )
=========================================================================
@endnode
@node Cap1101103 "DT_PHONENUMBER <Func: 103>"
=========================================================================
DT_PHONENUMBER Allows you to retrieve or change users phone number.
msg->Command = 103
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be the phonenumber
if msg->Data = 0, ten phonenumber will be msg->String
(FUNCTION #: 103 )
=========================================================================
@endnode
@node Cap1101104 "DT_SLOTNUMBER <Func: 104>"
=========================================================================
DT_SLOTNUMBER Allows you to retrieve users slot number
msg->Command = 104
msg->Data = 1
if msg->Data = 1, then msg->String will be the SLOTNUMBER.
(FUNCTION #: 104 )
=========================================================================
@endnode
@node Cap1101105 "DT_ACCESSLEVEL <Func: 105>"
=========================================================================
DT_ACCESSLEVEL Allows you to retrieve or change users access level.
msg->Command = 105
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be ACCESSLEVEL.
if msg->Data = 0, then ACCESSLEVEL will be msg->String.
(FUNCTION #: 105 )
=========================================================================
@endnode
@node Cap1101106 "DT_RATIOTYPE <Func: 106>"
=========================================================================
DT_RATIOTYPE Allows you to retrieve or change users RatioType
msg->Command = 106
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be RatioType.
if msg->Data = 0, then RatioType will be msg->String.
(FUNCTION #: 106 )
=========================================================================
@endnode
@node Cap1101107 "DT_RATIO <Func: 107>"
=========================================================================
DT_RATIO Allows you to retrieve or change users ratio
msg->Command = 107
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be ratio.
if msg->Data = 0, then ratio will be msg->String.
(FUNCTION #: 107 )
=========================================================================
@endnode
@node Cap1101108 "DT_COMPTYPE <Func: 108>"
=========================================================================
DT_COMPTYPE Allows you to retrieve or change users ComputerTypes code
msg->Command = 108
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be ComputerTypes.
if msg->Data = 0, then ComputerTypes will be msg->String.
(FUNCTION #: 108 )
=========================================================================
@endnode
@node Cap1101109 "DT_MESSAGESPOSTED <Func: 109>"
=========================================================================
DT_MESSAGESPOSTED Allows you to retrieve or change users MESSAGESPOSTED
msg->Command = 109
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be MESSAGESPOSTED.
if msg->Data = 0, then MESSAGESPOSTED will be msg->String.
(FUNCTION #: 109 )
=========================================================================
@endnode
@node Cap1101110 "DT_UPLOADS <Func: 110>"
=========================================================================
DT_UPLOADS Allows you to retrieve or change number of UserUploads.
msg->Command = 110
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be uploads.
if msg->Data = 0, then uploads will be msg->String.
(FUNCTION #: 110 )
=========================================================================
@endnode
@node Cap1101111 "DT_DOWNLOADS <Func: 111>"
=========================================================================
DT_DOWNLOADS Allows you to retrieve or change number of UserDownloads.
msg->Command = 111
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be downloads.
if msg->Data = 0, then downloads will be msg->String.
(FUNCTION #: 111 )
=========================================================================
@endnode
@node Cap1101112 "DT_TIMESCALLED <Func: 112>"
=========================================================================
DT_TIMESCALLED Allows you to retrieve or change number of UserCalls.
msg->Command = 112
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be TIMESCALLED.
if msg->Data = 0, then TIMESCALLED will be msg->String.
(FUNCTION #: 112 )
=========================================================================
@endnode
@node Cap1101113 "DT_TIMELASTON <Func: 113>"
=========================================================================
DT_TIMELASTON Allows you to retrieve or change time user last called.
msg->Command = 113
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be TIMESCALLED.
if msg->Data = 0, then TIMESCALLED will be msg->String.
NOTE: This is not a date stamp, this is the number of
seconds since January 19something.
(FUNCTION #: 113 )
=========================================================================
@endnode
@node Cap1101114 "DT_TIMEUSED <Func: 114>"
=========================================================================
DT_TIMEUSED Allows you to retrieve or change TIMEUSED today.
msg->Command = 114
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be TIMEUSED.
if msg->Data = 0, then TIMEUSED will be msg->String.
NOTE: This is in seconds.
(FUNCTION #: 114 )
=========================================================================
@endnode
@node Cap1101115 "DT_TIMELIMIT <Func: 115>"
=========================================================================
DT_TIMELIMIT Allows you to retrieve or change TimeAllowed for a user.
msg->Command = 115
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be TIMELIMIT.
if msg->Data = 0, then TIMELIMIT will be msg->String.
NOTE: Time in seconds.
(FUNCTION #: 115 )
=========================================================================
@endnode
@node Cap1101116 "DT_TIMETOTAL <Func: 116>"
=========================================================================
DT_TIMETOTAL Allows you to retrieve or change total time remaining.
for a user today.
msg->Command = 116
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be time remaining.
if msg->Data = 0, then time remaining will be msg->String.
NOTE: Time in seconds.
(FUNCTION #: 116 )
=========================================================================
@endnode
@node Cap1101117 "DT_BYTESUPLOAD <Func: 117>"
=========================================================================
DT_BYTESUPLOAD Allows you to retrieve or change bytes uploads per user.
msg->Command = 117
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be BYTESUPLOADED.
if msg->Data = 0, then BYTESUPLOADED will be msg->String.
(FUNCTION #: 117 )
=========================================================================
@endnode
@node Cap1101118 "DT_BYTEDOWNLOAD <Func: 118>"
=========================================================================
DT_BYTEDOWNLOAD Allows you to retrieve or change bytes downloaded per
user.
msg->Command = 118
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be BYTESDOWNLOADED.
if msg->Data = 0, then BYTESDOWNLOADED will be msg->String.
(FUNCTION #: 118 )
=========================================================================
@endnode
@node Cap1101119 "DT_DAILYBYTELIMIT <Func: 119>"
=========================================================================
DT_DAILYBYTELIMIT Allows you to retrieve or change a users daily byte
download limit.
msg->Command = 119
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be bytelimit.
if msg->Data = 0, then bytelimit will be msg->String.
(FUNCTION #: 119 )
=========================================================================
@endnode
@node Cap1101120 "DT_DAILYBYTEDLD <Func: 120>"
=========================================================================
DT_DAILYBYTEDLD Allows you to retrieve or change daily bytes downloaded.
msg->Command = 120
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be dailybytes.
if msg->Data = 0, then dailybytes will be msg->String.
(FUNCTION #: 120 )
=========================================================================
@endnode
@node Cap1101121 "DT_EXPERT <Func: 121>"
=========================================================================
DT_EXPERT Allows you to retrieve or change expert mode.
msg->Command = 121
msg->Data = 1 or 0
(FUNCTION #: 121 )
=========================================================================
@endnode
@node Cap1101122 "DT_LINELENGTH <Func: 122>"
=========================================================================
DT_LINELENGTH Allows you to retrieve or change user LINELENGTH specs.
msg->Command = 122
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be LINELENGTH.
if msg->Data = 0, then LINELENGTH will be msg->String.
(FUNCTION #: 122 )
=========================================================================
@endnode
@node Cap1101123 "ACTIVE_NODES <Func: 123>"
=========================================================================
ACTIVE_NODES Allows you to retrieve a string of active&inactive nodes.
msg->Command = 123
msg->Data = N/A
msg->String will be a string 10 bytes in length, with
'X's marking the active nodes.
NOTE: This command will surely be changing, the current
limit is 9 nodes.
(FUNCTION #: 123 )
=========================================================================
@endnode
@node Cap1101124 "DT_DUMP <Func: 124>"
=========================================================================
DT_DUMP Allows you to dump the user's data structure to a
specified file.
msg->Command = 124
msg->String = FileName
(FUNCTION #: 124 )
=========================================================================
@endnode
@node Cap1101125 "DT_TIMEOUT <Func: 125>"
=========================================================================
DT_TIMEOUT Allows you to retrieve or change the door TIMEOUT limit.
msg->Command = 125
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will equal TIMEOUT.
if msg->Data = 0, then TIMEOUT will equal msg->String.
NOTE: This time is in seconds.
(FUNCTION #: 125 )
=========================================================================
@endnode
@node Cap1101126 "BB_CONFNAME <Func: 126>"
=========================================================================
BB_CONFNAME Allows you to retrieve or change the conference name.
msg->Command = 126
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be name.
if msg->Data = 0, then name will be msg->String.
(FUNCTION #: 126 )
=========================================================================
@endnode
@node Cap1101127 "BB_CONFLOCAL <Func: 127>"
=========================================================================
BB_CONFLOCAL Allows you to retrieve or change the conference location.
msg->Command = 127
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be location.
if msg->Data = 0, then location will be msg->String.
(FUNCTION #: 127 )
=========================================================================
@endnode
@node Cap1101128 "BB_LOCAL <Func: 128>"
=========================================================================
BB_LOCAL Allows you to retrieve the current BBS location.
msg->Command = 128
msg->Data = N/A
(FUNCTION #: 128 )
=========================================================================
@endnode
@node Cap1101129 "BB_STATUS <Func: 129>"
=========================================================================
BB_STATUS Allows you to retrieve the current status of the node.
msg->Command = 129
msg->Data = N/A
msg->String will be 'OFFLINE' or 'ONLINE' depending on
whether a user is logged onto the node.
(FUNCTION #: 129 )
=========================================================================
@endnode
@node Cap1101131 "BB_MAINLINE <Func: 131>"
=========================================================================
BB_MAINLINE Allows you to retrieve the menu prompt arguments prior to
the door being entered.
msg->Command = 131
msg->Data = N/A
msg->String will be the menu prompt arguments.
(FUNCTION #: 131 )
=========================================================================
@endnode
@node Cap1101136 "RETURNCOMMAND <Func: 136>"
=========================================================================
RETURNCOMMAND Allows you to specify an internal command to be executed
when the door is finished.
msg->Command = 136
msg->Data = N/A
command to be executed will be msg->String.
(FUNCTION #: 136 )
=========================================================================
@endnode
@node Cap1101137 "ZMODEMSEND <Func: 137>"
=========================================================================
ZMODEMSEND Allows you to send files to the user via Zmodem protocol.
msg->Command = 137
msg->String = filename (complete pathname)
msg->Data = N/A
result of transfer will be in msg->Data, where
if msg->Data = 1 , then transfer successful.
if msg->Data = -2, then user lost carrier.
if msg->Data = 0 , then transfer unsuccessful.
(FUNCTION #: 137 )
=========================================================================
@endnode
@node Cap1101138 "ZMODEMRECEIVE <Func: 138>"
=========================================================================
ZMODEMRECEIVE Allows you to receive batch uploads via Zmodem protocol.
msg->Command = 138
msg->String = receive directory path
msg->Data = N/A
result of transfer will be in msg->Data, where
if msg->Data = 1 , then transfer successful.
if msg->Data = -2, then user lost carrier.
if msg->Data = 0, then transfer unsuccessful.
(FUNCTION #: 138 )
=========================================================================
@endnode
@node Cap1101139 "SCREEN_ADDRESS <Func: 139>"
=========================================================================
SCREEN_ADDRESS Allows you to retrieve the screen address.
msg->Command = 139
msg->Data = N/A
msg->String will be a string containing the hexadecimal
address of the Node screen.
(FUNCTION #: 139 )
=========================================================================
@endnode
@node Cap1101140 "BB_TASKPRI <Func: 140>"
=========================================================================
BB_TASKPRI Allows you to retrieve the priority the node is running at.
msg->Command = 140
msg->Data = N/A
msg->String will contain the priority of the node.
(FUNCTION #: 140 )
=========================================================================
@endnode
@node Cap1101141 "RAWSCREEN_ADDRESS <Func: 141>"
=========================================================================
RAWSCREEN_ADDRESS Allows you to retrieve the screen address of the node.
msg->Command = 141
msg->Data = N/A
msg->String will be a string containing the decimal address
of the express node.
(FUNCTION #: 141 )
=========================================================================
@endnode
@node Cap1101142 "BB_CHATFLAG <Func: 142>"
=========================================================================
BB_CHATFLAG Allows you to retrieve the current chat setting.
msg->Command = 142
msg->Data = N/A
msg->String will be "ON" or "OFF".
(FUNCTION #: 142 )
=========================================================================
@endnode
@node Cap1101143 "DT_STAMP_LASTON <Func: 143>"
=========================================================================
DT_STAMP_LASTON Allows you to retrieve a date string containing the date
of when the user last logged on.
msg->Command = 143
msg->Data = N/A
msg->String will be the date string.
(FUNCTION #: 143 )
=========================================================================
@endnode
@node Cap1101144 "DT_STAMP_CTIME <Func: 144>"
=========================================================================
DT_STAMP_CTIME Allows you to retrieve a current time string.
msg->Command = 144
msg->Data = N/A
msg->String will be a current time string.
(FUNCTION #: 144 )
=========================================================================
@endnode
@node Cap1101145 "DT_CURR_TIME <Func: 145>"
=========================================================================
DT_CURR_TIME Allows you to retrieve the current time in seconds since
January something.
msg->Command = 145
msg->Data = N/A
msg->String will be the current time.
(FUNCTION #: 145 )
=========================================================================
@endnode
@node Cap1101146 "DT_CONFACCESS <Func: 146>"
=========================================================================
DT_CONFACCESS Allows you to retrieve the users conference access.
msg->Command = 146
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be AREANAME.
if msg->Data = 0, then AREANAME will be msg->String.
(FUNCTION #: 146 )
=========================================================================
@endnode
@node Cap1101149 "BB_NODEID <Func: 149>"
=========================================================================
BB_NODEID Allows you to retrieve the Node number for the current
node
msg->Command = 149
msg->Data = N/A
msg->String will be the node number.
(FUNCTION #: 149 )
=========================================================================
@endnode
@node Cap1101150 "BB_CALLERSLOG <Func: 150>"
=========================================================================
BB_CALLERSLOG Allows you to add a line of text to the CALLERSLOG.
msg->Command = 150
msg->String = text
msg->Data = N/A
(FUNCTION #: 150 )
=========================================================================
@endnode
@node Cap1101151 "BB_UDLOG <Func: 151>"
=========================================================================
BB_UDLOG Allows you to add a line of text to the UDLOG.
msg->Command = 151
msg->String = text
msg->Data = N/A
(FUNCTION #: 151 )
=========================================================================
@endnode
@node Cap1101152 "EXPRESS_VERSION <Func: 152>"
=========================================================================
EXPRESS_VERSION Allows you to retrieve the current version string of
express.
msg->Command = 152
msg->Data = N/A
(FUNCTION #: 152 )
=========================================================================
@endnode
@node Cap1101162 "BB_CHATSET <Func: 162>"
=========================================================================
BB_CHATSET Allows you to retrieve or change the chat status.
msg->Command = 162
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be current status.
if msg->Data = 0, then status will be msg->String.
(FUNCTION #: 162 )
=========================================================================
@endnode
@node Cap1101163 "ENVSTAT <Func: 163>"
=========================================================================
ENVSTAT Allows you to retrieve or change the current environment
stat variable code.
msg->Command = 163
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be status.
if msg->Data = 0, then status will be msg->String.
(FUNCTION #: 163 )
=========================================================================
@endnode
@node Cap1101503 "NODE_DEVICE <Func: 503>"
=========================================================================
NODE_DEVICE Allows you to retrieve the node device name.
msg->Command = 503
msg->Data = N/A
msg->String will be the device string.
(FUNCTION #: 503 )
=========================================================================
@endnode
@node Cap1101504 "NODE_UNIT <Func: 504>"
=========================================================================
NODE_UNIT Allows you to retrieve the node unit number.
msg->Command = 504
msg->Data = N/A
msg->String will be the current node number.
(FUNCTION #: 504 )
=========================================================================
@endnode
@node Cap1101505 "NODE_BAUD <Func: 505>"
=========================================================================
NODE_BAUD Allows you to retrieve the initialized baud rate of the node.
msg->Command = 505
msg->Data = N/A
msg->String will be the INIT baud rate.
(FUNCTION #: 505 )
=========================================================================
@endnode
@node Cap1101507 "JH_MCI <Func: 507>"
=========================================================================
JH_MCI Allows you to send MCI text to express.
msg->Command = 507
msg->String = text
msg->Data = N/A
(FUNCTION #: 507 )
=========================================================================
@endnode
@node Cap1101508 "PRV_COMMAND <Func: 508>"
=========================================================================
PRV_COMMAND Allows you to immediately execute an internal express
menu command.
msg->Command = 508
msg->String = commandstring
msg->Data = N/A
(FUNCTION #: 508 )
=========================================================================
@endnode
@node Cap1101510 "BB_CONFNUM <Func: 510>"
=========================================================================
BB_CONFNUM Allows you to retrieve the current conference number.
msg->Command = 510
msg->Data = N/A
msg->String will be conference number ranging from 0 to 8.
(FUNCTION #: 510 )
=========================================================================
@endnode
@node Cap1101511 "BB_DROPDTR <Func: 511>"
=========================================================================
BB_DROPDTR Allows you to drop carrier on a user.
msg->Command = 511
msg->Data = N/A
(FUNCTION #: 511 )
=========================================================================
@endnode
@node Cap1101512 "BB_GETTASK <Func: 512>"
=========================================================================
BB_GETTASK Finds the current nodes task address.
msg->Command = 512
msg->Data = N/A
msg->task will be the express task address.
(FUNCTION #: 512 )
=========================================================================
@endnode
@node Cap1101516 "NODE_BAUDRATE <Func: 516>"
=========================================================================
NODE_BAUDRATE Allows you to retrieve the current users connect rate
msg->Command = 516
msg->Data = N/A
msg->String will be the connect rate
(FUNCTION #: 516 )
=========================================================================
@endnode
@node Cap1101517 "BB_LOGONTYPE <Func: 517>"
=========================================================================
BB_LOGONTYPE Allows you to retrieve the LOGONTYPE.
msg->Command = 517
msg->Data = N/A
msg->Data will be:
0 = AWAIT_LOGON
1 = SYSOP_LOGON
2 = LOCAL_LOGON
3 = REMOTE_LOGON
(FUNCTION #: 517 )
=========================================================================
@endnode
@node Cap1101518 "BB_SCRLEFT <Func: 518>"
=========================================================================
BB_SCRLEFT Allows you to retrieve the screen coordinates.
msg->Command = 518
msg->Data = N/A
msg->Data will be the Node's Initial LEFTEDGE coordinate.
(FUNCTION #: 518 )
=========================================================================
@endnode
@node Cap1101519 "BB_SCRTOP <Func: 519>"
=========================================================================
BB_SCRTOP Allows you to retrieve the screen coordinates.
msg->Command = 519
msg->Data = N/A
msg->Data will be the Node's Initial TOPEDGE coordinate.
(FUNCTION #: 519 )
=========================================================================
@endnode
@node Cap1101520 "BB_SCRWIDTH <Func: 520>"
=========================================================================
BB_SCRWIDTH Allows you to retrieve the screen coordinates.
msg->Command = 520
msg->Data = N/A
msg->Data will be the Node's Initial screen height.
(FUNCTION #: 520 )
=========================================================================
@endnode
@node Cap1101521 "BB_SCRHEIGHT <Func: 521>"
=========================================================================
BB_SCRHEIGHT Allows you to retrieve the screen coordinates.
msg->Command = 521
msg->Data = N/A
msg->Data will be the Node's Initial screen width.
(FUNCTION #: 521 )
=========================================================================
@endnode
@node Cap1101522 "BB_PURGELIN <Func: 522>"
=========================================================================
BB_PURGELIN Allows you to abort serial input.
msg->Command = 522
msg->Data = N/A
aborts serial input and flushes the serial buffer and sends
a request for more input.
(FUNCTION #: 522 )
=========================================================================
@endnode
@node Cap1101523 "BB_PURGELINESTART <Func: 523>"
=========================================================================
BB_PURGELINESTART Allows you to CLEAR the serial buffer and request more
serial input.
msg->Command = 523
msg->Data = N/A
(FUNCTION #: 523 )
=========================================================================
@endnode
@node Cap1101524 "BB_PURGELINEEND <Func: 524>"
=========================================================================
BB_PURGELINEEND Allows you to CLEAR the serial buffer.
msg->Command = 524
msg->Data = N/A
(FUNCTION #: 524 )
=========================================================================
@endnode
@node Cap1101525 "BB_NONSTOPTEXT <Func: 525>"
=========================================================================
BB_NONSTOPTEXT Allows you to change the NONSTOP text scrolling flag.
msg->Command = 525
msg->Data = 1 or 0
if msg->Data = 1, then display text will not pause.
if msg->Data = 0, then display text will pause.
(FUNCTION #: 525 )
=========================================================================
@endnode
@node Cap1101526 "BB_LINECOUNT <Func: 526>"
=========================================================================
BB_LINECOUNT Allows you to retrieve or change the user's current number
of lines viewed.
msg->Command = 526
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be current line.
if msg->Data = 0, then current line will be msg->String.
(FUNCTION #: 526 )
=========================================================================
@endnode
@node Cap1101527 "DT_LANGUAGE <Func: 527>"
=========================================================================
DT_LANGUAGE Allows you to retrieve or change the current language
specifications.
msg->Command = 527
msg->Data = 1 or 0
if msg->Data = 1, then msg->String will be language.
if msg->Data = 0, then language will be msg->String.
NOTE: Languages need to be standardized, please what for
guidelines.
ie: Default language .TXT
English .ENG
German .GER
note that this only effects the menus, bulletins &
other screen text files.
(FUNCTION #: 527 )
=========================================================================
@endnode
@node Cap1101528 "DT_QUICKFLAG <Func: 528>"
=========================================================================
DT_QUICKFLAG Allows you to change the QUICKTEXT flag.
msg->Command = 528
msg->Data = 1 or 0
if msg->Data = 1, then the QuickFlag will be set.
if msg->Data = 0, then the QuickFlag will not be set.
(FUNCTION #: 528 )
=========================================================================
@endnode
@node Cap1101529 "DT_GOODFILE <Func: 529>"
=========================================================================
DT_GOODFILE Allows you to set the results of a tested file after
upload.
msg->Command = 529
msg->Data = 1,0 or -1
if msg->Data is 1, then the file was not tested.
if msg->Data is 0, then the file passed the filetest.
if msg->Data is -1, then the file failed the filetest.
NOTE: This command is only useful with the SYSCmd door
called FILECHECK.
(FUNCTION #: 529 )
=========================================================================
@endnode
@node Cap1103 "Traditional Interface Module (TIM)
=========================================================================
The Traditional interface provides the capability to run "DOORS"
designed for other Bulletin Board Systems. This is not to say that it
will interpret all "DOORS" but some may work. The traditional interface
requires a file called PARADOOR, which is supplied with AmiExpress and
must be located in a path that AmiExpress can find. If a CARRIER LOSS
is detected or a keyboard TIMEOUT is detected, the BBS will notify the
Module, but it is up to the Module to do an orderly halt. Most door
programmers know how to close their doors properly. AmiExpress
automatically launches the PARADOOR so please do not run it yourself.
=========================================================================
@endnode
@node Cap1104 "AmiExpress Interface Module System (XIM)...."
=========================================================================
My interface is by far the best of all of these put together, it
allows you to do a lot of stuff. The best part about this interface is
you don't need a separate program to access it. There will be a lot of
Modules out for this in the near future, we have several being made
right now.
___________ message structure for use with the XIMs
| NOTE: RexxDoors are translated to the same structure
v ~~~~ via the REXXDOOR utility
struct JHMessage
{
struct Message Msg; <----- msg structure
char String[200]; <----- info buffer
int Data; <----- Read/Write & result indicator
int Command; <----- Command sent from door.
int NODEID; <----- reserved
int LineNum; <----- reserved
unsigned long signal; <----- reserved
struct Process *task; <----- see BB_GETTASK below
} ;
PORTNAME: The portname for the XIMs is 'AEDoorPort(n)' ie: AEDoorPort1
=========================================================================
@endnode
@node Cap1105 "AmiExpress CLI Interface (XIM)...."
=========================================================================
This new interface can be used to run CLI doors. Not all doors will
work correctly. You will have to experiment.
Setup procedure:
1st: You must have Fifo-Handler in your L: directory, and also
you must have a Fifo.Library in your Libs: directory. You must
have at least version 0.4 of the Fifo.Library.
2nd: You must add these lines to your user-startup,
-------> assign AXCLI: DOORS:CliConFigs
-------> run >NIL: <NIL: L:Fifo-Handler
3rd: You must create a directory in your doors: called cliconfigs.
This directory will store the config files for each door run.
They must have the door name and a .cfg behind it. These cfg
files control the paths to the doors, and the commands allowed
and not allowed with your keys.
THIS IS AN EXAMPLE CFG FILE:
doors:contris/contris! ~N
BREAK_C
The first line is the execution line. Any following line is the
filter options, which are as follows:
BREAK_C -----> Allows Ctrl C
BREAK_D -----> Allows Ctrl D
BREAK_E -----> Allows Ctrl E
BREAK_F -----> Allows Ctrl F
RAWMODE -----> Allows Unfiltered IO
~~~~~~~~~~~~ WARNING ~~~~~~~~~~~~~~
As you can see, the CLI Doors are VERY DANGEROUS. If
you have a wrong option in the cfg file, you could be
opening your whole bbs up for the taking. I really mean
taking. A use might be able to Break the CLI and get into
your system And you know what that means.
We suggest you research the use of the multi-user file system for
security. WE WILL NOT BE HELD RESPONSIBLE IF SOMEONE BREAKS INTO
YOUR SYSTEM. YOU HAVE BEEN WARNED.
=========================================================================
@endnode
@node Cap12 "The MCI imbedded ControlSequence...."
=========================================================================
Any text file may contain imbedded control sequences which will send out
variable text or cause certain things to happen.
MCI - Introducer:
~~~~~~~~~~~~~~~~
~ This is the MCI introducer, this must be at the beginning of
each text file by itself in order for Express to switch to the MCI
interpreter for displaying the text file.
MCI - User Specification:
~~~~~~~~~~~~~~~~~~~~~~~~
~N User Name
~IN User Internet Name
~RN User Realname
~UL User Location
~P User Password
~# User Phone
~TC Total User Calls
~LC User Last Call to the system
~M User Message Posted
~A User Access Level
~S User Slot Number
~CA User Conf. Access **** NOTE CHANGED FROM X ****
~BR User BaudRate
~HW User Computer Equipment
~TL User Initial Time Limit at logon in Minutes
~TR User Number of Mins Remaining today
~UB User Bytes Uploaded
~DB User Bytes Downloaded
~FU User Files Uploaded
~FD User Files Downloaded
~BD User Byte Download Limit
~LG User Logged On-Node
~DX Change the MCI command terminator.
i.e.: ~D.| will change the '|' to '.'
~OD Online Since Date
~OT Online Since Time
~CX Change foreground ansi color to anything from 0-f.
~BX Change background ansi color to anything from 0-f.
~H Back Space
~Q Change to default ANSI mode.
~F Clear Screen.
~Nx Newlines where x is the number of them you would like
~~ This indicates you wish the ~ symbol to appear, you can
have as many of them as you like after the first ~ to display
them (NOTE: no ',' on this command)
~xN Goto X position on screen. ie: ~x10
~yN Goto Y position on screen. ie: ~y10
NOTE: The above commands allow you to specify a width identifier before
~~~~ the action test.. ie:
~10N would only display the first 10 letters of the username.
MCI - System Specification:
~~~~~~~~~~~~~~~~~~~~~~~~~~~
~SC System Total calls
~CT Show current Time
~DT Show current Date
MCI - Extra Specification:
~~~~~~~~~~~~~~~~~~~~~~~~~
~CR will wait for any key to be pressed.
~CR_Prompt will wait for and prompt the user to press any key.
ie: ~CR_PressAnyKey
~SP will do a standard pause, this is useful to put in
between each ~SS command.
~<xx>SR_<screens>
This allows you to have random textfiles by using this
MCI Command. <xx> represents the maximal number of
random file you want to change. and <screens> is the full
path to the textfiles you want to be random displayed.
(without .TXT)
~SS_Name Show <name> file. This file may also be an MCI file.
WARNING: This command could cause a serious loop problem if
~~~~~~~ you tell it to show the same file you are viewing.
WARNING: You may need to increase STACK if you nest to many
~~~~~~~ of these files.
NOTE: If this command is accessed via the message base or the
~~~~ View or ViewSysop commands, then the file you are going
to view has to have a file comment of
'Allowed' or '{xxx}Allowed'
{xxx} specifies security level or above ie:
{050}Allowed, indicates that only those over or equal to
access level of 50 are allowed to view the
file.
~SR - Show Random Files
SYNTAX: ~<numb>SR_<fileid>
^ ^ ^
| | |
| | ---------- pathname without security level and file
| | extension
| ------------- Command to show random file
------------------ Number of Random files
IE: ~10SR_BBS:Logon
This will look for a random file between 1-10, the syntax for the file
to display is:
SYNTAX: PathName<seq>.FileName[security level]<extension>
IE: BBS:001.Logon200.TXT
This would be the first of ten files to create to be displayed
by the random function, the '200' is the security level which is
optional.
~SX - Show Sequentual Files
SYNTAX: ~SX_<fileid>
^ ^
| |
| ---------- pathname without security level and file
| extension
------------- Command to show sequentual file
IE: ~SX_BBS:Logon
1. This will look for a file called BBS:Logon which will store the last
sequence of the <fileid> that was displayed. If this file does not
exist, the 'SX' command will create it.
2. Then it will construct a display file name based on the next sequence
number as follows:
SYNTAX: PathName<seq>.FileName
3. It will then look for the appropriate file to display. The actual
ASCII file should contain the following information for the filename:
SYNTAX: PathName<seq>.FileName[security level]<extension>
IE: BBS:001.Logon200.TXT --v
BBS:001.Logon100.TXT ----- notice the different security levels
keeping in mind that they are optional.
BBS:002.Logon200.TXT
~CC_Name Launch a door 'Name' is the door's name.
ie: ~CC_WHO will look in SYSCMD, BBSCmd and CONF<x>CMD
directory which must be located in the
BBS:Commands directory.
~CC_WHO
NOTE: It is important to realize that most MENU COMMANDS should only
be run from the MENU PROMPT. For Instance , forcing the READING
of mail at the FRONTEND of express would not be wise because the
BBS does not know who is logging onto the system. So use your
own judgement on these matters.
~CL this command will display a list of conferences,
commonly used in the JoinConf.TXT file
*******************************************************************
NOTE: ALL MCI COMMANDS MUST END WITH EITHER A SPACE OR A '|' SYMBOL
ALL COMMANDS ARE CASE SENSITIVE!!!!!!!!
*******************************************************************
Having a line in a text file that contains:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~N , I hope everything is going well in ~L .
Might show:
~~~~~~~~~~
Joseph Hodge, I hope everything is going well in Virginia.
=========================================================================
@endnode
@node Cap13 "Notable Features of AmiExpress..."
=========================================================================
1. Command history has been added in to allow up to 20 history lines
to be remembered. Once the limit of 20 has been released the
history will cycle thru. CTRL-B will reset the history pointer
to zero entries.
2. The HELP key performs a screen to background command.
3. The BBS checks to make sure the AUXx: or CNN: device can be opened
and tells the user if there is a problem.
4. Baud Calling times has been added in, kind of a throw in and will
be changed, but for now, specify the time period a baud rate CAN
call, like to allow a baud to call all the time enter 0 for start
and 2359 for end. Start time must be a lower number than end time.
As I stated this is not perfect and will be removed from the Config
and a file will contain all the times a baud can't call. It will
allow more flexibility.
5. AREXX port 'AmiExpress_Node.x', supports the following features:
suspend - causes the BBS to close the serial port and iconify
and wait for a resume command. If someone is ONLINE
the BBS will wait until they logoff to reply to the
suspend message, and then the BBS will suspend. This
allows you to create a batch file that will automatically
suspend the BBS and load your terminal program and once
your finished with the terminal program put the BBS
back up.
a example Arexx Program should be like this that the
BBS will suspend:
------------- cut here ------------------
/* The Suspend Command for AmiExpress V4.0 */
address 'AmiExpress_Node.1'
'suspend'
------------ cut here -------------------
resume - this command is only used while the BBS is suspended.
shutdown - this command will cause the BBS to lower the users
time ONLINE to 2 mins and tell the user that it has
received an emergency shutdown notice. Once the user
is off the BBS exits from memory.
NOTE: None of these features work without Arexx.
There will be lots of AREXX commands in the future, including
node to node chatting..
6. Automatic Zmodem upload, if a user starts a Zmodem upload on
the main prompt the BBS will detect this and enter the Zmodem
upload routines.
7. SYSOP now has the ability to run a node in the background just
for his local use. To do this just remove the device name from
the Config file and the BBS will not use the serial port.
=========================================================================
@endnode
@node Cap14 "Note worthy of Mention...."
=========================================================================
I would personally like to thank Joseph Hodge, who has painstakingly,
and endlessly programmed, and put up with us. It is not easy to try and
make a program do what everyone wants. I still do not know to this day
why he choose to carry on with AmiExpress but I sure am appreciative,
It has been a wonderful learning experience in both the programming world
and friendships. We have become like brothers, and like brothers will be
together through the good times and bad times.
I would also personally like to thank all of the wonderful people listed
on the ACP credits menu. They are great people, and have a lot of patience
and enthusiasm in making express the best BBS program around.
I would also like to thank all the distributors and users who have helped
the development of express. It is heart warming to see the devotion that
comes from the registered users, more devotion then we ever expected.
Enjoy the BBS, once setup will assuredly become second nature to run.
It is a fantastic program, and we all have Joseph Hodge to thank for
it's developement.
Please report any errors in this file, or any other file to:
-------------------------------------------
LightSpeed Technologies Inc. (305) 964-4263
-------------------------------------------
Or Mail to:
LightSpeed Technologies Inc.
P.O. Box 4435
Hollywood, Fl. 33083-4435
=========================================================================
@endnode
@node Cap15 "QWK Mail Support...."
=========================================================================
In the 'W' option for users, is now the ability for the user to pick
what kind of Zoom they want. They can pick QWK, or the old ascii
zoom option.
NOTE: You must first install some new Icons in the ZOOM dir, otherwise
it wont work. You must have 3 Icons called:
QWKCFG --> In this icon are the following tooltypes:
BBS.NUMBER=<YOUR PHONE NUMBER> IE: 1-305-964-4263
BBS.ADDRESS=<ONE LINE ADDRESS> IE: FLORIDA
QWPACK --> In this icon are the following tooltypes:
LHA=c:LHA a
ZIP=c:ZIP -0
ASCPACK --> In this icon are the following tooltypes:
LHA=c:LHA a
ZIP=c:ZIP -0
Edit them to fit your needs !
Now to be able to upload your replied messages from the QWK interface
You need to do this.
To install:
First: Make an icon called SQWK and put it in the bbs:cmds dir. It is a
XIM door.
Second: Put the sqwk file in the doors: dir.
Third: Put the sqwkmerge file in the BBS:utils dir. It is now installed.
Now as the user, all you would have to do is hit SQWK at a
menu prompt. The bbs will then be awaiting for your replied
QWK mail. REMEMBER only send your reply packet in the upload.
It should have the extension of .REP on the file. The user can
go on and do other things while the QWK is unpacking the mail.
=========================================================================
@endnode
@node Cap16 "Icon Script Language Support...."
=========================================================================
In this new 4.0 release, acp has the new option of setting up all the
directories and icons from scratch. So anyone even if they do not
know how to get a bbs going can have a default script file,
(that we have provided in the s:dir of the main support disk), get
there bbs up from just hitting the Setup Button on the ACP.
What is so nice about this is that you guys who write doors or
utilities for express, can create script files that will
automatically create the directories, icons, and put your default
commands in the icon automaticlly by the acp custom installer,
just the way you want them, without wondering if the end user is
installing your program correctly. Now let me explain
how this works:
The script file provided will set up a default express. You can add
or delete to your liking. We have it now so it will create a bbs
in RAM: so be CAREFUL it will delete what you have already set up
if you change the script to BBS:
When you start the acp and it does not find any configured BBS ready
to go, the acp will pop up a requestor asking you what file (script)
you want to use. If you have the aeicon.config in your dh0:s dir,
it will automatically configure a new bbs. The only thing you will
need are the default icons that you found originaly in your storage
dir. The setup procedure uses those icons to copy over, and then
uses the information you (us) gave in the script file. Now you can
change the icons the way you want, and the options you want in the
icons. In the script file (aeicon.config) you will see an explanation
of the options. I will not go into any more right now, but it is
pretty much self explanatory, especially for you guys that program
in C.
=========================================================================
@endnode
@node Cap17 "Trouble Shooting...."
=========================================================================
Problem Solution
-------------------------------- -----------------------------------
ACP will not start. 1. Make sure ACP is being run
from the startup-sequence or WB
2. Goto an AmigaDos shell, go to the
directory where the command is
located and type ACP, this
should give you an error message
indicating that perhaps a file is
missing.
3. Be sure that you have the ICON in
the same directory as the Main
Program
Express will not start, but
ACP will. 1. Make sure that if you are using
a batch file to execute express
that the batch file has a 's' bit
assigned to it, ie:
PROTECT S:BBS.Startup +s
^
|
batch filename
2. Goto the directory in which
express exists and type from
a shell:
Express 0
^
|___ (node number)
This should tell you why the
program is not running.
ACP and EXPRESS run but express 1. The stack size of express is
gurus every time someone enters not getting set. You must have
the msgbase scan. a stacksize of 50000 for this
to work.
ACP comes up but there is no 1. Make sure the statement:
NODE buttons. NUMBER_OF_NODES x exists, where
<x> should be replaced with the
number of nodes you are going
to have.
My modems will not initialize 1. Make sure the UNIT statements
reflect the correct UNIT
number.
2. Make sure the DEVICE_NAME is
correct.
3. Make sure you have a
MODEM_INIT string in the MODEM
ICON.
In the CALLERSLOG: 1. Make sure you started the
Error Reading MsgBase Pointer CONFDB Utility the Right way:
is listed 1> CONFDB BBS:CONF/ <max.Usernumber>
2. Make sure CONF.DB is in each
conference you have.
3. Make sure that the Usernumber
you choose in the creating of
CONF.DB is not lower than the
actual one.
=========================================================================
@endnode
@node Cap18 "Future planned Enhancements.."
=========================================================================
We are experimenting with various ideas with express to allow more
diversity, some of the items coming up AS UPDATES in the 4.0 version of
Express are:
Full Internet access ability. You will be able to upload/download
to the internet, Also read/write in a pre-defined conference message
bases to the internet.
So people, hang in there, you will see a lot of enchancements in the
next couple of months.
=========================================================================
@endnode