User Tools

Site Tools


Sidebar

Overview

Installation

MYSTIC -CFG

Visual Customization

Mystic Utilities (MUTIL)

Scripting Custom Modules

Quick Reference

What's New

menu_commands

MENU ACTION REFERENCE

Mystic BBS has a completely configurable and incredibly flexible menu system that allows for full control over the visual appearance and functionality of the BBS. Each menu consists of the basic settings, and a list of menu commands that define what options are available on each menu. These menu commands can then be assigned one or many “actions” to perform when the item is selected. Each action may also have parameters that can be or will be required to be specified in the “data” field.

This section contains a reference to all of the menu actions available in your Mystic BBS as well as any information needed that relates to those actions.


AUTO SIGNATURE

An Auto signature is an user created signature that can optionally be automatically appended to each message posted by the user. The following menu commands are available for manipulating the auto message:

AD - Delete Auto Signature

       Data: None
Description: Deletes the user's auto signature

AE - Edit Auto Signature

       Data: None
Description: Edits the user's auto auto signature

AT - Toggle Auto Signature

       Data: /NOASK
Description: Asks the user if the want to enable or disable the auto signature.  If
             the /NOASK option is supplied on the optional data field, then Mystic
             will toggle the setting without prompting with a Yes/No question.

AV - View Auto Signature

       Data: None
Description: View the user's auto signature

BBS LIST

Mystic can have any number of different BBS lists, identified by using a “List ID”. The List ID is simply the base filename used to store the BBS list database on disk, so it can be any valid filename but should never include any file extension, just a basic word of text. The following section contains BBS List menu commands:

BA - Add new entry to BBS list

       Data: <LIST ID>
Description: This option allows the user to add a new entry to a BBS list.  The BBS
             list must be specified using the <LIST ID> in the optional data.
             

BL - List entries in a BBS list (detailed view)

       Data: <LIST ID>;SEARCH
Description: This option allows the user view the BBS list using the detailed list
             mode.  This provides more information than the typical abbreviated list
             The <LIST ID> must be specified in the optional data.  If ";SEARCH" is
             appended onto the List ID, then Mystic will prompt and allow the user
             to search for entries in the BBS list.

BS - List entries in a BBS list (abbreviated view)

       Data: <LIST ID>;SEARCH
Description: This option allows the user view the BBS list using the abbreviated view
             mode.  This provides more information than the typical abbreviated list
             The <LIST ID> must be specified in the optional data.  If ";SEARCH" is
             appended onto the List ID, then Mystic will prompt and allow the user
             to search for entries in the BBS list.

EXTERNAL DOORS

Mystic BBS supports DOOR.SYS, CHAIN.TXT, and DORINFO1.DEF DOS-based door formats, as well as Mystic's own native DOOR32.SYS format for modern BBS doors and games. These drop files are always created in the node's specific temporary directory. For example, if a door is executed on node 1, then the drop files will be created in the temp1 temporary directory.

In the Linux and OS X versions, Mystic automatically redirects the standard input and output of external programs, allowing many programs that are not even designed for BBSes to be used.

Each door action has a command line which will be executed by the operating system when the action is executed. There are a number of codes that Mystic will replace with specific values if they are found in the command line:

 %C = The current user's codepage (CP437 or UTF8) (added 1.12 A39)
 %N = The current node number (added 1.12 A34)
 %H = The current socket handle (added 1.12 A34)
 %P = The node's temp directory
 %# = User's unique ID
 %T = User's time left in minutes
 %U = User's handle (spaces are replaced with an underscore _)
 
 %0 = The current communication handle (socket handle)
 %1 = Depreciated. Always returns a "1" now
 %2 = Depreciated. Always returns "38400" now
 %3 = The current node number
 %4 = User's IP address
 %5 = User's hostname

The following commands are available for executing external programs and doors:

DD - Execute External Program

       Data: <command line to execute> /DOS
       
Description: Creates the DORINFO1.DEF, CHAIN.TXT, and DOOR.SYS drop files in the node's
             temporary directory.  In case sensitive file systems, these files are
             created with full UPPERCASED letters.  If the /DOS option is appended on
             to the end of the command line, Mystic will create the drop files in a
             DOS text file format, even when used in operating systems like OS X and
             Linux that used a different text file format.

D3 - Execute DOOR32 Door Program

       Data: <command line to execute> /DOS
Description: Creates the DOOR32.SYS drop file in the node's temporary directory.  This
             file is always created in lower cased letters on all operating systems.
             If the /DOS option is appended on to the end of the command line, Mystic
             will create the drop files in a DOS text file format, even when used in
             operating systems like OS X and Linux that used a different text file
             format.

FILE BASES

Mystic supports an unlimited number of file bases and file groups which can contain any number of files within them. Files can be listed using arrow and page keys to scroll through the list, and archives can be interactively browsed and searched in the same way (including archives within archives). Mystic fully supports long file names in both file directories and file names, and has extended support for things like ANSI within .DIZ files, and more.

This section contains menu actions that are relative to Mystic's file areas.

FA - Change File Base

       Data: "+", "-", <Base ID>, /NOLIST, or None
Description: This action will list the File Bases in the user's current File Group
             and prompt the user to select a new File Base.  If /NOLIST is supplied in
             data, then Mystic will prompt for the File Base and not automatically
             list them first.  If the data is set to "+" then Mystic will move to the
             next File Base that the user has access to.  If the data is set to "-"
             then Mystic will move to the previous File Base.  Finally, the Base ID
             can be supplied (as shown in the File Base Editor) to automatically change
             the user into a specific File Base.

FD - Download Files

       Data: None
Description: This command will prompt the user to download file(s).  If the user
             currently has files queued for download, Mystic will ask them first
             if they would like to download the queued files.  If the user selects
             no or does not have any files in the queue, Mystic will ask them for
             a filename to download, and then search the File Bases to allow the
             user to download the requested file.

FF - Download New/Master File List

       Data: /NEW, /GLOBAL, None
Description: This command will compile a list of files in the File Bases based on
             the user's access levels.  If no option is supplied, Mystic will
             generate a list of all files in the File Bases in the user's current
             file group.  If /NEW is supplied, Mystic will generate a list of only
             new files.  If /GLOBAL is supplied, Mystic will generate a list that
             will include all File Bases within all File Groups instead of just the
             current group.

FG - Change File Group

       Data: "+", "-", <Group ID>, or None
Description: This action will list the File Groups that the user has access to,
             excluding any groups flagged as "hidden" and then prompt the user to
             select a File Group.  If the data is set to "+" then Mystic will move to
             the next File Group.  If the data is set to "-" then Mystic will move to
             the previous File Group.  Finally, the Group ID can be supplied (as shown
             in the File Group Editor) to automatically change the user into a specific
             File Group.
             
             When joining a file group, Mystic will display the "fgroup#" display file
             from the theme's text directory if it exists, where # is the group's ID.

FI - File Base Index

       Data: <template filename with no extension>, or None
Description: The File Base Index system presents users with a list of all File Bases,
             sorted by group, along with statistics of total and new files for each
             base.  Users can scroll through and search through this list, and select
             File Bases to list files in as well as "subscribe" and "unsubscribe" to
             specific bases.
                           
             The data field provides the template name which if left blank defaults to
             "file_index" and points to the template file to load.  This field should
             not include a file extension as .ini will be appended to it.
             
             The template file contains all of the visual configurations for this
             function as well as many other options that can completely customize the
             experience.  For example, one could copy the default file_index.ini
             template to file_change.ini, and then modify its visual and functional
             settings so that it pops up a scroll box of File Bases for the user to
             change their current File Base.
             
             The same could be done to pop up a list of Files Bases that allows the
             user to toggle which bases will be included in scans for new files.  To
             use these alternative templates, simply execute FI with the data field of
             "file_change" or whatever the custom template filename you've created is.

FL - List files in current File Base

       Data: SEARCH, None
Description: This command will list files in the user's currently selected File Base.
             If the word SEARCH is in the data field, Mystic will prompt the user to
             enter a file mask to search for files which match a certain file mask.

FN - Scan for, and list new files

       Data: "A", "C", "G", None
Description: This command will scan and list new files uploaded since the last time
             the user scanned for new files.  If no data is provided, Mystic will
             ask the user if they'd like to scan the current base or all bases in
             the user's current File Group.  If data is A then Mystic will scan all
             File Bases within all File Groups.  If data is G then Mystic will scan
             all File Bases in the current group without prompting.  If data is C
             then Mystic will only scan the user's current File Base.

FP - Set new file scan date

       Data: None
Description: This command will allow the user to set their new last file scan date
             to a user inputted date.  After entering the date the user will be
             asked if they would like to set the date for the current File Base or
             all File Bases.  Finally, Mystic will reset the last new file scan
             date for appropriate Bases.

FS - Search for files

       Data: None
Description: This command will allow the user to search for files by performing
             a partial text match against the filename OR any text in the file
             description.  Mystic will first present the "fsearch" display file
             if it exists, then prompt the user for search criteria.  Next the
             user will be asked if they would like to search the current Base,
             all Bases in the group, or all Bases in all Groups.

FU - Upload a file

       Data: None
Description: This command will allow the user to upload a file.  If the BBS is
             configured to place uploads in a specific File Base, then the file
             will be uploaded into that base.  Otherwise, it will be uploaded to
             the user's currently selected File Base.
             
             Mystic will first display the "upload" display file if it exists, and
             next ask the user for the file transfer protocol unless the user has
             selected a Default protocol in which case it will skip this step.
             
             Finally, Mystic will prompt to press enter to begin the transfer.  If
             the transfer protocol is anything that was created within the last 25
             years or so, chances are Mystic will never even need to ask for
             filenames.
             
             In fact, a user can upload as many files as they want at one time without
             ever entering any file names or information about the file!  Mystic
             can detect all of the upload files, test them, import descriptions if
             they exist, and optionally prompt the user for descriptions if it is
             configured to do so (and there wasn't a .DIZ to import).
             
             In the event a protocol is chosen from the stoneage, like Xmodem, then
             Mystic will simply ask for the filename before beginning the transfer.

FV - View contents of a file

       Data: None
Description: This command allows the user to view the contents of a file in the File
             Bases.  The user is prompted for a file name, and the filename is then
             searched for throughout all Bases in the user's current file group.  If
             a file is found, the contents will be listed and the user can navigate
             through its contents, view and download files within the archive, as
             well as view, search and download contents of archives contained with
             that archive.         

FZ - Toggle File Bases for New Scan

       Data: /ALLGROUP, None
Description: This command allows users to select the bases that are included in their
             scan for new files during a new file scan.  The bases listed are the
             bases in their current group.  If the /ALLGROUP option is in the data
             field then Mystic will present them all File Bases in all File Groups
             as long as they meet access requirements.

GENERAL COMMANDS

GD - Show a display file

(For information on Random Display Files, see Display Files)

       Data: ([FILE]) or (@[BAUD]@[TRUE/END/FALSE]@[FILE]) [/NEW]
Description: This command sends the contents of a display file to user.  There are a
             vast number of optional data which can be supplied to change the way in
             which the files are sent.
             
             If the [FILE] parameter does not include a directory, then Mystic
             will assume the file exists in the user's current Theme's TEXT directory
             
             If the [FILE] parameter does does not include an file extension, Mystic
             will display .ANS if it exists or .ASC if the ANSI version does not exist
             In this mode, Mystic will also apply the Random Display File logic to the
             base filename, selecting a random file if enabled.               
             
             If [/NEW] is added to the end of the data command, Mystic will only
             display the file if it is NEW.  This means if the date of the display
             file is newer than the user's last call into the BBS.
             
             The (@[BAUD]@[TRUE/END/FALSE]@[FILE]) method allows the ability to
             emulate a baud rate while displaying, as well as whether or not to pause
             the screen during display (TRUE) or only at the end (END), or not at all
             (FALSE).  The [FILE] parameter uses the same rules as discussed above.
             
             Some examples of the DATA commands:
             
                  Data: myfile
                Result: Mystic will display "myfile.ans" from the user Theme text
                        directory or "myfile.asc" if the ANSI version does not exist
                        or the user does not have ANSI.  If the .AN1 or .AS1
                        extension exists, Mystic will apply its random display file
                        logic to the file and select a file randomly.
                        
                  Data: c:\mystic\textfiles\myfile.txt
                Result: Mystic displays the file if it exists.
                
                  Data: c:\mystic\textfile\myfile
                Result: Mystic will display the ANSI version if it exists or the
                        ASCII version if it does not. (.ans and .asc respectively)
                        
                  Data: bbsnews /NEW
                Result: Mystic will display bbsnews from the user theme text
                        directory but only if it has been edited since the user's
                        last call
                        
                  Data: @19200@FALSE@myfile
                Result: Mystic will display myfile from the user theme text directory
                        applying the same extension rules.  It will emulator 19200
                        baud rate which works on all terminals, and it will NOT pause
                         
                  Data: @0@END@myfile
                Result: Mystic will display myfile from the user theme text directory
                        applying the same extension rules.  It show the display file
                        at full speed and only pause at the END of the display file.                
                       
                  Data: @38400@FALSE@c:\mystic\textfiles\myfile.txt /NEW
                Result: Mystic will display myfile.txt from the specified directory
                        while emulating 38400 baud rate and pausing on each page but
                        only if it was updated since the user's last login.

GV - View a display file in ANSI viewer

       Data: <template>;<helpfile>;<speed>;<filename>[;END]
Description: The ANSI viewer shows a file within the full screen, allowing the user to
             scroll up and down through the file using their arrow keys, page up/down,
             and home keys.  The viewer also has the ability to extract and display
             SAUCE tags to get the artist and group information.  Pressing SPACE will
             also display the file in a "traditional" BBS way, scrolling from start to
             finish using the supplied emulated baud rate.  Several values are required
             in the DATA field for this command, separated by a semi-colon:
             
             <template> defines the template used for the viewer itself, found in the
             current theme's display (text) directory.  For more information on
             configuration of the template, see **TO BE COMPLETED** section.
             
             <helpfile> defines the help file displayed when the user selects to show
             help from within the viewer.  It should be in the text directory.
             
             <speed> defines the baud rate to emulate when displaying the file if the
             user selects <space> to display traditionally.  Use a baud rate of 0 for
             a full speed display.
             
             <filename> defines the name of the file to actually display to the user.
             If no file extension is provided, ".ans" will be assumed.  If no path
             is provided, Mystic will use the current theme's text directory.
             
             Optional paramenters:
             
             <END> if ";END" is added after the filename field, the viewer will start
             viewing at the end of the file instead of the beginning.
             
             Examples:
               
                Command: GV
                   Data: ansigalv;ansigalh;38400;myansifile
                   
                Command: GV
                   Data: ansigalv;ansigal;0;myansifile;END
                   
             The first example will execute the display file viewer using the
             template "ansigalv" and the help file "ansigalh" with the baud rate
             of 38400 if a user presses <space> to do a traditional view.  The
             file "myansifile" is the display file, since it is missing a path
             and a file extension, Mystic will use ".ans" and the current theme
             text directory.
             
             The second example is the same as the first, except it displays the
             file at full speed instead of 38400 baud emulation, and also starts
             showing the file at the end of the file, rather than the beginning.
            

—-

Mystic offers the ability to connect to another system through your own using any one of TELNET, RLOGIN, or SSH protocols. By default, Mystic will attempt to connect via IPV4 but if it cannot, it will next try to connect via IPV6 before ultimately failing.

Both RLOGIN and SSH protocols will require a user and password be supplied in the optional data.

IR - Outbound RLOGIN Connection

       Data: /addr=<hostname> /port=1234 /user=@USER@ /pass=@USER@
Description: This command creates a gated terminal session to another terminal server
             using the RLOGIN protocol.  The /addr /user and /pass options must be
             included.  If the /port option is not provided then the default port
             of 513 will be used.
             
             Mystic will replace @USER@ with the current user's name if it is supplied
             in either or both of the /user or /pass options.
             
             The user's password cannot be sent using an @code@ and must be manually
             supplied due to the password encryption.  Mystic in the near future will
             encrypt a users password, meaning at no time does it ever know or store
             your actual password.  It cannot send it because it doesn't know it.

IS - Outbound SSH Connection

       Data: /addr=<hostname> /port=1234 /user=@USER@ /pass=@USER@
Description: This command creates a gated terminal session to another terminal server
             using the SSH protocol.  The /addr /user and /pass options must be
             included.  If the /port option is not provided then the default SSH port
             of 22 will be used.
             
             Mystic will replace @USER@ with the current user's name if it is supplied
             in either or both of the /user or /pass options.
             
             The user's password cannot be sent using an @code@ and must be manually
             supplied due to the password encryption.  Mystic in the near future will
             encrypt a users password, meaning at no time does it ever know or store
             your actual password.  It cannot send it because it doesn't know it.

IT - Outbound TELNET Connection

       Data: /addr=<hostname> /port=1234
Description: This command creates a gated terminal session to another terminal server
             using the TELNET protocol.  The /addr option must be included.  If the
             /port option is not provided then the default port of 23 will be used.
menu_commands.txt · Last modified: 2018/04/05 11:32 by g00r00