home *** CD-ROM | disk | FTP | other *** search
- These docs are very rudimentary docs and are NOT complete, at present
- they are only a guideline and WILL change.
-
- Config File Definition
- ======================
-
- you may use YES/NO or TRUE/FALSE for boolean options
-
- /'s will be added to paths if required.
-
- space's are NOT permitted in filenames.
-
- all strings should be enclosed in "'s eg NodeName="Node 1"
-
- Any string may contain C style escape codes, of course if you are
- writing a door that has specific field lengths you may strip the ansi codes
- using the hbbs.library function designed to do this.
-
- ;'s are used for comment lines, they may be after an option or on seperate lines
-
- blank lines are allowed (aids structure)
-
- all optionnames MUST start on the first character of the line
-
- Options take the following format:
-
- Optionname=<Option Parameter>
-
- Option Parameters are dependant on the option and the data it requires
- here are how they are defined
-
- String="some text" ; must be enclosed in "'s
- Path=drive:dir ; need not have trailing /
- File=drive:dir/dir/file ; paths/files MAY NOT have spaces in the filenames
- Boolean=[YES|NO|TRUE|FALSE] ; one of four possible options without ['s
-
-
- System Config
- =============
-
- There is one main program with a GUI (that can be turned off/closed) that controls
- the node programs, the main programs sends messages to the node programs and the
- node program sends messages back to the main program depending on what is
- happening.
-
- each node program only controls the actual serial port device and the order in
- which a user can go around the bbs system, running commands/doors when appropriate
-
- for every option/system event the node program loads external programs. e.g.
-
- a user logs on, the node program runs a frontend door that may ask for the username
- and password, after that door is finished the control goes back to the node program
- which then runs an initial login door that may display ansi screens etc. then
- the node program would calla command to join the last conference the user was in,
- then it goes back to the node program which then prompts the user for a command, and
- depending on what the user types in the node program runs another external door.
-
- so EVERY SINGLE PART OF THE PROGRAM can be changed, so if you don't like the way
- the system does mail messages then just change the associated doors that
- handle the mail system! it's so configurable it's untrue!
-
- BBS Path Structure
- ==================
-
- + defines directory,
- - defines a config file (always text files)
- = defines an executable file
- * defines a door/system file
-
- NOTE: files in subdirectories ALWAYS override the options that may be set in
- files in its parent directory. E.G. Nodes/Node1/NodeLocal will override
- settings Nodes/NodeGlobal, likewise Conferences/#?/Commands/User/#?
- would override settings in Commands/User/#?
-
- BBS:
- - BBSGlobal ; defines a few settings for the bbs
- + Nodes
- - NodeGlobal ; defines settings for ALL nodes
- + Node1
- + Work ; temporary files will go in this directory
- + Playpen ; all uploads go in this directory
- - NodeLocal ; Defines config options specific to the node
- - Device ; defines the modem/device for the node
- + Node2
- + Work
- + Playpen
- - NodeLocal
- - Device
- + ...
-
- + Access
- - NewUser ; access file for NewUsers
- + Users
- - Level_List ; file that lists the various access levels
- - Level_Global ; defines access setting for ALL levels
- - Level_#? ; then each level overrides the global settings
- ; and there must be one for each level defined in
- ; level_list (above)
-
- + Conferences
- - ConfList ; defines the amount of conferences and where
- ; each conference directory is located
- + <conference directory>
- - ConfConfig ; config file for conference
- + Screens
- + FileLists
- + Hold ; default hold path for conference (see ConfConfig)
- + Access
- - Level_#? ; lets you override access's for each conference
- ; great for allowing a user to write "everybody"
- ; messages in their groups conference but nowhere
- ; else
- + Commands
- + System
- - #? ; each file is the name of the system option
- ; e.g. WriteMail.1, FileExamine.1
- + User
- - AliasList ; command alias definition file
- ; eg, DIR=FR, NEW=N S U
- - #? ; each file is the same as the menu option
- ; the same as /X's BBS:Commands/BBSCMD/#? files
- + Sysop
- - #?
-
- + Scripts
- - #? ; bbs system script files go in here
-
- + Doors
- + System
- * #? ; System Executables, E.g. writemail, readmail,
- ; filecheck, logoff, logon, joinconf, filelist...
- + User
- * #? ; User Executables. E.G. New Cool Filelister,
- ; Voting Booth, Nuker...... same as /X doors
-
- + Screens
- + Special
- + Bulletins
-
-
- Files are not stored in the bbs: directory structure as the sysop may have other
- devices that may be setup in a particular way, below is how we recommend you
- organize your file direcotories as it is a more structures way of doing it.
-
- Files_#?:
- + <conference directory>
- + Hold
- + Files
- + <conference directory>
- + Hold
- + Files
- + ...
-