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.
The syntax of each menu command is:
Data: available data switches / syntax A description of the menu command and available data switches
Note: Mystic has around 140 different menu commands, not all of them are documented here yet.
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 Deletes the user's auto signature
AE - Edit Auto Signature
Data: None Edits the user's auto auto signature
AT - Toggle Auto Signature
Data: /NOASK 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 View the user's auto signature
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> 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 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 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.
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 node's temporary directory “temp1” that is created off of the root Mystic BBS directory (ie c:\mystic\temp1\)
In the Linux and macOS 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. From a technical perspective it forks and executes your command line with /bin/sh then creates a watchdog on the child process so that it can help trap lost connections even for programs that cannot detect those types of things natively (like a BBS door would). It is important to understand that commands are not executed from bash when Mystic runs them, they are executing the system shell. In other words, if you want to test a command line you should test it accordingly outside of Mystic by executing: /bin/sh -c <Your command line here> to see if it works.
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:
%# = User's unique ID %A = User's real name (spaces are replaced by an underscore) %B = User's real name (with spaces) %C = The current user's codepage (CP437 or UTF8) (added 1.12 A39) %H = The current socket handle (added 1.12 A34) %N = The current node number (added 1.12 A34) %P = Node's temp directory where drop files are stored (w/ trailing slash) %R = User's handle (with spaces) %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
All of the door menu commands have a helper function to allow switching directories without relying on scripting or operating system commands. If “CD<directory>” is used in the command line (without the quotes), Mystic will remove it and change to the directory specified between the <> characters prior to executing the command line.
Mystic tracks the number of doors opened by a user when using a DOOR menu command. Door command lines can have a /NOSTAT at the end of the command line in optional data to tell Mystic not to increment the users door count.
The following commands are available for executing external programs and doors:
DD - Execute External Program
Data: <command line to execute> /DOS 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 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.
DX - Execute w/ DOSXTRN (Win32)
Data: <command line to execute> Creates DORINFO1.DEF, CHAIN.TXT, and DOOR.SYS drop files in the node's temporarily directory and then runs the command line with DOSXTRN DOS FOSSIL redirection (as an alternative to NetFossil). This function only works for Windows 32-bit systems and requires dosxtrn.exe and sbbsexec.dll to be placed into the root Mystic BBS directory. This is the recommended method to run DOS doors if you are using Windows 32-bit
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 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 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 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 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 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. NOTE: Even if you do not use file groups for anything, there needs to be at least one file group created for the Index Lister to function.
FL - List files in current File Base
Data: SEARCH, None 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 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 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 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: /current 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. If the /current option is specified, Mystic will attempt to upload to the current file base even if a specific file base has been configured for uploads
FV - View contents of a file
Data: None 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 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.
G1 - Show BBS History
GA - View ANSI Gallery
Data: <path to files> [/TEMPLATE=mygallery] [/NOSAUCE] Opens the ANSI gallery allowing the user to browse and view ANSI files (including non-standard terminal size art, Amiga specific variations with font switching, and more). The path to files should contain the root directory where users will start browsing from. The default template of "gallery" will be used but this can be overridden using the /TEMPLATE option as shown Depending on the disk and system speed, reading the contents of a large directory and checking each file for SAUCE information can take some time. Adding /NOSAUCE on the optional data field will disable sauce reading for the file listing. SAUCE will always still be used when viewing a file in the ANSI viewer. This can also be set in the gallery template but this will override that setting.
GD - Show a display file
(For information on Random Display Files, see Display Files)
Data: ([FILE]) or (@[BAUD]@[TRUE/END/FALSE]@[FILE]) [/NEW] [/ABORT] [/MCI] 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. If [/ABORT] is added to the end of the data command, Mystic will not allow the user to abort displaying the file. Aborting is allowed by default. If [/MCI] is added to the end of the data command, Mystic will not process MCI codes of any kind, including pipe colors, while display the file. 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.
GE - Edit User Settings
Data: <# of field to edit> <Field options> This command can be used to allow users to edit information in their user profile. The data field must contain a number which defines which field should be edited. NOTE: The real name and alias fields (marked with * below) should NEVER be made available for editing to the user, they are provided to optionally allow the user to correct mistakes from NEWINFO.MNU only! The following field numbers can be supplied in the data field: 1 - Street Address 2 - City/State 3 - Zip Code 4 - Home Phone Number 5 - Data Phone Number 6 - Birth date 7 - Gender 8 - Date Format 9 - Terminal Emulation 10 - Screen Length 11 - Password *12 - Real Name *13 - Alias 14 - Theme Selection 15 - Editor Type 16 - Toggle Invisibility 17 - File List Type 18 - Toggle Availability 19 - Toggle HotKeys 20 - Message Reader Type 21 - Toggle LB Msg Idx 22 - Email Address 23 - User Note 24 - Optional Field 1 25 - Optional Field 2 26 - Optional Field 3 27 - Toggle LB Quote 28 - Toggle LB Email Idx 29 - Toggle Node Chat Type 30 - Toggle QWK FileList 31 - Select Archive Type 32 - Default Transfer Protocol 33 - Use QWKE Packets Some fields have additional options which can be presented after the field number on the data field: 14 Theme Selection ------------------ Syntax: [None] [/RELOAD] or [Theme Directory] Example Data: 14 mytheme When no extra data is provided, Mystic will prompt the user to select a theme. If /RELOAD is provided, Mystic will reload the prompts of the current theme from the disk. If a theme directory is provided (as listed in the theme editor), then Mystic will automatically switch to that theme without prompting the user.
GH - Hangup/Logoff Session
Data: None or /RECYCLE
GI - Hangup/Logoff Session Immediately
Data: None or /RECYCLE
GL - Show Last Callers
Data: None or <Callers> This command shows the last callers who connected to the BBS. By default the last 10 callers are shown but the optional data field can contain a number up to 99 that will show anywhere from 1 to 99 "last callers".
GO - Goto Menu
GN - Show OneLiners
GP - Page Sysop For Chat
GR - Gosub Return Menu
Data: /CURSOR /SKIPEXEC
GS - Gosub Menu
GT - Display Text
GU - Show/Search User List
GV - View a display file in ANSI viewer
Data: <template>;<helpfile>;<speed>;<filename>[;END] 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.
GX - Execute Mystic Programming Language (MPL) Program
GY - Execute Mystic Python 2.x (MPY) Script
GZ - Execute Mystic Python 3.x (MPY) Script
G! - Execute Mystic Script (MS) Script
G? - Open Mystic Help System
—-
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. All outbound connection commands can include a /PROMPT in the optional data field which will hide display of the “connection” prompts.
IR - Outbound RLOGIN Connection
Data: /addr=<hostname> /port=1234 /user=@USER@ /pass=@USER@ /term=? 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. The terminal type will default to "ansi/57600" but the terminal type can be overridden by using the /term=value option. 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@ 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. By default Mystic never stores a users password, meaning at no time does it ever know your actual password. It cannot send a password because it doesn't know it.
IT - Outbound TELNET Connection
Data: /addr=<hostname> /port=1234 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.
The following menu commands related to the Message Bases and reading/posting of messages.
MA - Change Message Area
Data: # + - NOLIST This menu command allows the user to change to a new message area. If no optional data is present, then a list of message areas will be shown to the user. If the + sign is on the optional data field, Mystic will select the next available message area that the user has access to. If the - sign is on the optional data field, Mystic will select the previous available message area that the user has access to. If NOLIST is provided on the optional data field, Mystic will prompt the user to select a message area but will not show the list of areas unless the user asks to see it by entering ? to list. If a message area Unique ID is presented on the option data field, Mystic will change to the message area that is linked to the supplied unique ID.
MC - Check Private Local E-mail
Data: /NOLIST /UNREAD /SCAN This menu command checks the user's private e-mail box for messages and provides a list of all messages in the private mailbox followed by a prompt asking the user if they would like to read the messages. If the /NOLIST option is supplied on the optional data field, Mystic will skip listing the messages and go directly to reading new e-mail messages. If the /UNREAD option is supplied, Mystic will list only messages that are flagged as "unread" in the list and prompt only if there are unread messages. If the /SCAN option is supplied, Mystic will silently calculate the values of the waiting and unread mail values without any interaction with the user. These value can then be displayed with the MW or MU MCI codes.
MD - Set Message Last Read By Date
Data: /ALL This menu command allows the user to set their "last read" message in each message base by inputting a date. After a valid date is supplied Mystic will ask the user if they would like to set this date for the current base or all bases. If the user selects all bases, then every message base regardless of group will be updated. If the /ALL optional data is provided, Mystic will skip the prompt and update all message bases with the user supplied date.
MF - View/Scan Draft Messages
Data: /SCAN When posting a message, users will have the option to save a message as a draft and resume the message post at another time. If a user loses their session for any reason such as a disconnection or they run out of session time while posting a message, Mystic will also automatically save a draft of their message post. This option will present a list of available saved draft messages and provide the user the ability to continue a post or remove the draft message. If the /SCAN option is provided on the optional data field, Mystic will scan and if there are draft message saved, it will ask the user if they would like to resume their draft messages. If there are no draft messages Mystic will do nothing.
MG - Change Message Group
Data: "+", "-", <Group ID>, or None This action will list the Message Groups that the user has access to, excluding any groups flagged as "hidden" and then prompt the user to select a group. If the data is set to "+" then Mystic will move to the next available message group. If the data is set to "-" then Mystic will move to the previous available message group. If the Group Unique ID is supplied, Mystic will automatically change the user into the specific message group. When joining a message group, Mystic will display the "group#" display file from the theme's text directory if it exists, where # is the group's ID.
MI - Message Index Reader
Data: <template filename with no extension>, or None The Message Base Index system presents users with a list of all message bases along with statistics of total, new, personal messages for each bases. Users can scroll through and search through the list and select bases to read, search, post, subscribe or unsubscribe from. The data field provides the template name which if left blank defaults to "msg_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 msg_index.ini template to msg_change.ini, and then modify its visual and functional settings so that it pops up a scroll box of message bases for the user to change their current message base. The same could be done to pop up a list of message bases that allows the user to toggle which bases will be included in scans for new messages. To use these alternative templates, simply execute MI with the data field of "msg_change" or whatever the custom template filename you've created is. NOTE: Even if you do not use groups for anything, there needs to be at least one message group created for the Index Reader to function.
ML - Browser/Search Network Nodelists
Data: None This command opens up a network node list browser which allows the user to list FidoNet-style networks by Zone, Net, or search by Address or Text.
MM - Send Mass BBS E-mail
Data: None This command allows the user to send bulk private BBS email to users using either an access string, a list of user names, or all users on the BBS system. This function is typically only made available to System Operators
MN - Scan for New Messages
Data: /G /P /M /NOLR /NOFROM /NOREAD /YOU This menu command scans for new messages. The optional data field allows for modifiers to the default behavior. By default if no optional data is provided, Mystic will scan for all new messages in the user's current message group. If /P is provided in optional data, Mystic will only scan for personal messages (messages From or To the user) If /G is provided in optional data, Mystic will scan all message bases in all groups. If /M is provided in optional data, Mystic will forced the user to read the new messages (mandatory read). If /NOLR is provided, Mystic will not update the user's "last read" message when performing the scan. The following commands augment the behavior of the /P personal scan option: If /NOFROM is provided, Mystic will exclude any messages written by (from) the current user. If /NOREAD is provided, Mystic will not show messages that have been flagged as "Read" by the user. If /YOU is provided, Mystic will look ONLY at the To field to see if the message is addressed to you. By default Mystic personal scan will look at both the From and To fields.
MP - Post New Message
Data: /TO: /SUBJ: /ADDR: /F This menu command allows the user to post a message in the current message bases. If /TO:<text> is provided, the post can be automatically addressed to the supplied username in <text>. Note that spaces should be replaced by underscores (_) when supplying this. If /SUBJ: is provided, the post will have its subject automatically set. Spaces should be replaced with underscores. If /ADDR: is provided, the post will have its FTN Network address automatically set. If /F is provided, the post will be forced meaning the user will not be able to abort posting the message when they are in the message editor.
MQ - Message Quick Scan
Data: None /CURRENT /GROUP /LIST /NEW /YOU /NOFOOT /NOSCAN /NOFROM /NOREAD Performs a scan of all message bases, listing message statistics similar to those found in the index reader. By default scanning will be done to all bases in all groups. If /CURRENT is supplied, scanning will be done only to the current message base If /GROUP is supplied, scanning will be done only to bases in the current group If /LIST is supplied, the scan will also list messages found which can be combined with other options to limit what is listed. If /NEW is supplied only bases with new messages will be shown. If /YOU is supplied only bases with message to/from you will be shown. If /NOFROM is supplied Mystic will exclude messages posted by you. If /NOREAD is supplied Mystic will exlucde messages to the user that have already been read. If /NOSCAN is supplied, Mystic will not show the "scanning" prompt when calculating If /NOFOOT is supplied, Mystic will not show the "footer" prompt
MR - Read Messages
Data: <None> "B" "F" "N" "Y" "S" Reads messages in the currently selected message base. The data field specifies the read mode, which can be any one of the following: <BLANK> Prompts user to select read mode. "B" Reads messages posted by the user. "F" Reads messages forward. "N" Reads new messages. "S" Text search for messages "Y" Reads messages sent TO the user.
MS - Message Search
Data: None "A" "G" "C" Allows the user to search for messages using Mystic's boolean search engine. If no data field is supplied Mystic will default to searching for messages in the current group. If "C" is supplied, Mystic will search only in the current message base. If "A" is supplied, Mystic will search all bases in all groups. If "G" is supplied, Mystic will search bases in the current group
MV - View Sent Local E-mail
MW - Send Private Local E-mail
Data: /TO: /SUBJ: /F Each user has a personal e-mail box that exists only on the BBS and this command is used to send a message to a user's personal mailbox. Messages posted here are shown to the user when the MC menu command is executed to check their local mailbox. If /TO:<text> is provided, the post can be automatically addressed to the supplied username in <text>. Note that spaces should be replaced by underscores (_) when supplying this. If this is not supplied then Mystic will ask the user to who to send the message to. If /SUBJ: is provided, the post will have its subject automatically set. Spaces should be replaced with underscores. If this is not supplied then Mystic will ask the user for the message subject. If /F is provided, the post will be forced meaning the user will not be able to abort posting the message when they are in the message editor.
MX - Post text file to message base
Data: <File>;<Base ID>;<From>;<To>;<Subject>;[Network To Address] This menu command posts a text file to a message base. It will allow a file up to 10,000 lines to be posted and will automatically split them into multiple posts of 1000 lines each if the post is more than 1000 lines (including automatically appending a message count to the end of the subject ie: (1 of 3)" If you want to post an ANSI file, it should be saved with a 79 column width using a capable ANSI editor. Mystic's own built in ANSI editor can save an ANSI file properly formatted for message posting by specifying a column length of 79 in the Save dialog. The optional data field is required for this to work, except for the Network Address field which is only required if you are posting to a NetMail base. Each value should be separated by a semi-colon (;). The <File> field contains the filename to post to the base. This file should be a text file with up to 79 columns per line and up to 10,000 lines. The <Base ID> is the Message Base ID as found in the Message Base Editor <From> The From field of the message <To> The To field of the message <Subject> The Subject of the message [Network Address] is the To network address used when posting to a NetMail base. This field can be excluded when not posting Netmail. Examples: c:\mystic\temp1\msgtext.txt;1;g00r00;All;Statistics for January c:\mystic\temp1\msgtext.txt;3;g00r00;Avon;Automated post;21:1/101
MZ - Set Message New Scan Settings
Data: None Allows the user to select which message bases will be scanned in their new message scan. Bases scanned can also be set using the index reader (MI) menu command.
OD - Download QWK/QWKE Packet
OS - Set QWK Scanned Bases
OU - Uploads QWK/QWKE Packet
NA - Set Note Action
Data: Action text This command will set the node action which appears when a Who's Online list is done. The optional data field is required for this command and specifies the text that will appear in the "Action" field for the current user.
NC - Multi-node Teleconference/Chat
NP - Page Online User For Chat
NS - Send Node Message
Data: None or <Node;Message> Send message to a node. When the optional data field is blank, Mystic will prompt the user to select a node and input a message. The optional data field can also be used to send a message to another node, or broadcast a system-wide message to all available users by using the "node;message" format. The node number must be supplied first followed by a semi-colon and then the message text. For example, 2;Hello would send a message to node 2 saying Hello. If a zero is used as the node number, the message text will be sent to all users currently logged in using the System Message format. Two MCI codes can be used to send the user name and node number of where the message originated from: &1 = Name of user where message was sent from &2 = Node number message was sent from
NW - Show Who's Online
If the /SCAN optional data is supplied, Mystic will not display the who's online list but instead force recalculation of active users (returned by the NA MCI code).
-B - Break Command Execution
This command is an advanced menu command that can be used to break the current menu execution chain. For example, if you have 4 menu commands that all have the same hotkey and call -B on the second one, only the first two commands will be run. The 3rd and 4th menu command will be skipped because the -B menu command breaks the chain of commands.
-D - Toggle Access Flags (Set 2)
Data: <Command/Flag Set> Set user flags. This will allow user flags to be set for each user's SECOND set of flags using the following format in the Data field: <Command><Flag> <Command> This is the action of the flag. It can be any one of the following: + = Set <FLAG> to ON. - = Set <FLAG> to OFF. ! = Toggle <FLAG>. <FLAG> is the flag to toggle. Valid flags are letters A through Z and should be represented as all capital letters. Example data fields: !A (toggles flag A) -B (toggles flag B OFF) +A (toggles flag A ON !A-E+Y (toggles A, turns E OFF, turns Y ON)
-F - Toggle Access Flags (Set 1)
Data: <Command/Flag Set> Set user flags. This will allow user flags to be set for each user's SECOND set of flags using the following format in the Data field: <Command><Flag> <Command> This is the action of the flag. It can be any one of the following: + = Set <FLAG> to ON. - = Set <FLAG> to OFF. ! = Toggle <FLAG>. <FLAG> is the flag to toggle. Valid flags are letters A through Z and should be represented as all capital letters. Example data fields: !A (toggles flag A) -B (toggles flag B OFF) +A (toggles flag A ON !A-E+Y (toggles A, turns E OFF, turns Y ON)
-G - Display Generated Menu
-I - Set TIMER Counter
Data: <Seconds> Set the counter of the TIMER menu commands. For example if you have a TIMER menu command set to execute every 30 seconds and you set the counter to 29, it will execute 1 second later.
-M - Set menu Marquee text
Data: /ADD <text>, <text>, or /RESET This command sets the current menu''s Marquee text with the text contained in the data field. If the first 5 characters are "/ADD " in the data field then the text will be appended onto the existing scrolling Marquee. If the data field is /RESET it will reset the Marquee to the configured Marquee text value. Otherwise it will replace the Marquee with the text in the data field.
-N - Ask Yes/No Question (Default to No)
Data: <Text> This command will display the text in the data field to the user and then prompt with a Yes/No question, defaulting to an answer of "No". The result of the user's selection will be stored in the "OK" ACS command, so that if the user answers Yes, then the OK ACS will evaluate to TRUE. If the user answers No, the OK ACS will evaluate to FALSE.
-P - Ask Password
Data: <Text;Password> This command will display the Text portion of the data field, and then prompt for a password which is defined also in the data field as the second parameter, separated by a semi-color from the text. If the user successfully enters the password, the OK ACS function will evaluate to TRUE. If the user does not enter the password, the OK ACS function will evaluate to FALSE. For example: Data: |CR|09Enter password: |11;PASSWORD
-R - Set Value of OK ACS flag
Data: <0 or 1> This command will set the value of the OK ACS command. If the data field is set to 1, then the OK ACS will evaluate TRUE and if set to 0 it will evaluate to FALSE.
-S - Add Line Into Node Log
Data: <Text> This command adds the <Text> supplied in the data field to the node log file. The text will automatically be formatted with the time stamp and spacing to match other log entries in the log file.
-V - Validate User E-mail
Data: <None> or <Security Level> This command sends an e-mail to the user's e-mail address containing a code that the user must enter into the BBS after the e-mail is sent. Once the user has successfully entered the code, their e-mail address will be considered validated. The OV ACS function can be used in ACS strings to determine if the user has validated their e-mail address. If the optional data field contains a security level, then Mystic will automatically upgrade the user's security profile to the security level provided after successful validation.
-Y - Ask Yes/No Question (Default to Yes)
Data: <Text> This command will display the text in the data field to the user and then prompt with a Yes/No question, defaulting to an answer of "Yes". The result of the user's selection will be stored in the "OK" ACS command, so that if the user answers Yes, then the OK ACS will evaluate to TRUE. If the user answers No, the OK ACS will evaluate to FALSE.
QA - Add File To Batch Queue
QC - Clear Batch Queue
QD - Delete File From Batch Queue
QL - List Files In Batch Queue
TD - Add Time To Time Bank
TW - Withdraw Time From Time Bank
VA - Add New Question To Voting Booth
VD - Delete Question From Voting Booth
VN - Scan for New Questions
Data: /F Scans for new voting booth questions that the user has not voted on and presents each question to the user for voting. If the /F option is supplied the user will be forced to vote on all new questions.
VR - View Results
VV - View/Vote On Voting Booth Questions
Data: <Question #> /F or None This option allows the user to vote on questions in the voting booth. If the optional data is blank then the user will be presented a list of all voting questions. If the Question number is supplied the user will be taken directly to the question # supplied in the optional data field. If /F is supplied along with a question number then the user will be forced to vote on the question.
XA - Matrix: Apply for Account
Data: None Apply for an account. This menu command allows the user to create a new user account, but then is taken back to the Matrix menu where they will not be able to enter the BBS without the Matrix password (when enabled) or meeting the Matrix ACS access string. If "Login after Apply" is set to Yes in the Login settings, then the user will automatically be logged into the BBS instead of returning to the Matrix menu.
XC - Matrix: Check for password
Data: None This command is intended to be used when the Matrix password is enabled. The user will be asked to enter their username and password and if successful, they will be shown the Matrix password if a password has been set. For setups that are not using a Matrix password system, then this command is not needed.
XL - Matrix: Login
Data: <Blank> or /FULL Login to the BBS system. This command allows the user to log into the BBS system. If a Matrix password is enabled, then the user will be required to enter the Matrix password. If the Matrix password is not enabled then the user will be required to meet the "Matrix ACS" access string requirements in order to be logged into the BBS. Users who do not meet the Matrix ACS will be refused with a message stating they do not have access. If the /FULL optional data is supplied, then Mystic will bypass the Matrix password or Matrix ACS checking and immediately jump to the full user login experience that is given when the Matrix login is completely disabled.
XP - Matrix: Page Sysop
Data: <None> or /F Page SysOp for chat from Matrix. This command works just like the other Page SysOp command, but it requires the user to authenticate first. If /F is supplied, the user will be forced to page the SysOp even if they do not enter a chat reason.
XV - Matrix: Validate E-mail address
Data: <None> or <Security Level> Validate e-mail address. This command requires the user to authenticate and then will allow them to perform an e-mail address validation process just the same as the -V menu command. The user will be sent an e-mail with a code to their e-mail address and be required to enter the code. If the code is entered correctly, their access can optionally be automatically upgraded by supplying the upgraded user security level in the optional data field.
UF - Edit User's Twit Filter List
!C - Create Semaphore File
This command adds three lines of text to the semaphore file:
If no user was logged in when this was created the ID will be -1 and the handle blank.
!D - Delete Semaphore File
!E - Check If Semaphore Exists
*# - Menu Editor
Data: <none> or /THEME Opens the menu editor. By default Mystic will ask to select the theme to edit. If /THEME is in the data field it will skip this and open the menu editor with the current theme already selected.
*A - Archive Editor
*D - Mystic DOS
*E - Event Editor
*F - File Base Editor
*G - Message Group Editor
*L - Security Level Editor
*M - Message Base Editor
*P - Protocol Editor
*R - File Group Editor
*S - System Configuration (All Editors)
*T - Theme Editor
*U - User Editor
*Y - Recycle/Reset User Session
*1 - Edit Text File
*2 - Edit ANSI File
*3 - Snoop User On Node
*4 - View Log Files
F1 - Mass upload files
Data: None Search all file base directories for new files that have not been added to the file listings and import them into the file listings
F2 - File List Editor
Data: None Edit the file directory listing of the current file base. This is the same as using the Edit command from the listing, where you can perform various editing and maintenance functions or hatch a file from the file listing.
F3 - Download File (Send to User)
Data: <Full Path and Filename> [/PROT=X] [/NOPROMPT] Send the file supplied in the data field to the user. The user's file statistics will not be updated. If the optional PROT command is used then the Mystic will select the protocol automatically that is associated to the hotkey in the Protocol configuration. For example: /PROT=Z would auto select Zmodem by default. If the optional /NOPROMPT command is supplied then Mystic will skip the "Press a key to start transfer or Q to Quit" prompt