diff --git a/export_filebone.ini b/export_filebone.ini new file mode 100644 index 0000000..461e955 --- /dev/null +++ b/export_filebone.ini @@ -0,0 +1,14 @@ + Export_FILEBONE.NA = true + +[Export_FILEBONE.NA] + + ; Path/Filename of NA file to create + + filename = tqwnet_filebone.na + + ; Include only the following zones (separated by commas) + ; If commented out, all network bases that have an echotag and address + ; set will be exported + + ;zones = 0,1,2,3,4 + ;zones = 1337 diff --git a/filesort.ini b/filesort.ini new file mode 100644 index 0000000..0fba2d2 --- /dev/null +++ b/filesort.ini @@ -0,0 +1,107 @@ +; MUTIL configuration file +; ------------------------------------------------------------------------- +; +; MUTIL is an automated maintainance and utility program driven by +; configuration files used to perform various tasks upon execution. +; +; The syntax to execute MUTIL is: MUTIL . If no +; configuration file is supplied, then the program will look for mutil.ini +; in the same directory. A second parameter -NOSCREEN can be used to turn +; off screen updates but the configuration file parameter MUST be supplied +; ex: mutil mutil.ini -NOSCREEN +; +; Many different configuration files can exist to perform any series of +; tasks supported by MUTIL, or a single configuration can be maintained that +; does everything. The minimum requirement is the General header with a +; task enabled, and then the specific header for that task that defines its +; options. +; +; Current abilities (enabled/disabled in the General header below): +; +; - Export Binkley-style FLO echomail/netmail +; - Import Binkley-style FLO echomail/netmail +; - Import Message Bases (by datafile analysis) +; - Import FIDONET.NA into Message bases +; - Import FILEBONE.NA into File bases +; - Mass upload files to all file bases (with FILE_ID.DIZ import and the +; ability to exclude files by filemask) +; - Generate Top 1 up to 99 Callers, Posters, Downloaders, Uploaders, PCR +; Completely configurable output by using template files +; - Import FILES.BBS into file bases +; - Generate all files listing +; - Purge Message bases (by age and max messages) +; - Pack and renumber message bases +; - Post text files to message bases +; - Merge nodelists into Mystic format +; - Toss TIC+files into BBS and to subscribed downlinks +; - Pack and check integrity of file base listings +; - Sort file base listings +; - Perform message base echomail reply linking +; - Purge user database marking inactive users for deletion +; - Pack user database and remove private messages of deleted users +; +; The concept here is that you can create your own custom command lines to +; complete any number of tasks. For example, you could create msgmaint.ini +; which executes message base purge, packing, and reply linking. Then you +; can simply execute "mutil msgmaint" to kick it off. +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[General] + + ; list of functions to perform on startup + + FileSort = true + + ; Set this value if you want to run mutil from a directory other than + ; the root Mystic directory or the mysticbbs environment variable: + + ; mystic_directory=c:\mystic\mystic.dat + + ; If no directory is specified in the logfile name, mUtil will attempt + ; to use the configured LOGS directory from in Mystic's configuration. + ; Comment out to disable logging completely. + + logfile=mutil.log + + ; If set to TRUE (*HIGHLY* recommended for MUTIL) then it will write the + ; log file in increments of 8KB at a time. If set to FALSE it will write + ; each individual line as it is logged. This will significantly reduce + ; MUTIL performance if set to FALSE. + + logcache=true + + ; Level 1 = basic + ; Level 2 = verbose + ; Level 3 = debug + + loglevel=3 + + ; logfile time stamp. defaults to NNN DD HH:II:SS if not set here + ;logstamp = YYYYHHMMHHIISS + + ; Log roller type: + ; 0 = Do not roll log files + ; 1 = Roll by number of files/filesize + ; 2 = Roll by number of days + + logtype = 2 + + ; number of log files to keep (0 to disable log rolling) + maxlogfiles = 31 + + ; size of each log file in kilobytes + maxlogsize = 1500 + +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[FileSort] + + ; Sort on which attribute (0=filename 1=size 2=date 3=downloads) + attribute = 0 + + ; Sort direction 0=Ascending (A to Z, 1 to 10) 1=Descending (Z to A, 10 to 1) + direction = 0 diff --git a/filetoss.ini b/filetoss.ini new file mode 100644 index 0000000..2984adf --- /dev/null +++ b/filetoss.ini @@ -0,0 +1,287 @@ +[General] + + ; list of functions to perform on startup + + FileToss = true + + ; Set this value if you want to run mutil from a directory other than + ; the root Mystic directory or the mysticbbs environment variable: + + ; mystic_directory=c:\mystic\mystic.dat + + ; If no directory is specified in the logfile name, mUtil will attempt + ; to use the configured LOGS directory from in Mystic's configuration. + ; Comment out to disable logging completely. + + logfile=mutil.log + + ; If set to TRUE (*HIGHLY* recommended for MUTIL) then it will write the + ; log file in increments of 8KB at a time. If set to FALSE it will write + ; each individual line as it is logged. This will significantly reduce + ; MUTIL performance if set to FALSE. + + logcache=true + + ; Level 1 = basic + ; Level 2 = verbose + ; Level 3 = debug + + loglevel=3 + + ; logfile time stamp. defaults to NNN DD HH:II:SS if not set here + ;logstamp = YYYYHHMMHHIISS + + ; Log roller type: + ; 0 = Do not roll log files + ; 1 = Roll by number of files/filesize + ; 2 = Roll by number of days + + logtype = 2 + + ; number of log files to keep (0 to disable log rolling) + maxlogfiles = 31 + + ; size of each log file in kilobytes + maxlogsize = 1500 + +; ========================================================================== +; ========================================================================== +; ========================================================================== +[FileToss] + + ; Processes .TIC files from incoming directories and move/upload files to the + ; appropriate file bases (optionally creating them). Files are then tossed + ; to the fileboxes of all downlinks connected to the file base. + + ; Directory where failed files are moved, or comment out to disable archive of + ; failed files. This includes incorrect file sizes, bad CRC, missing area + ; when auto-create is disabled, duplicate files, unsecured, etc. + + bad_dir=/mystic/files/badfile + + ; Toss TIC from unsecure directory in addition to inbound? + + unsecure_dir = false + + ; File description to use when no DIZ, long description or description can be + ; found from the file or .TIC file. + + no_desc=No Description + + ; Name of the uploader to use when adding TIC files into the local file bases + + uploader=tqwNet TIC + + ; Check size and CRC values supplied in TIC file (if found) against the actual + ; file. If the value does not match, then skip tossing the file (moving it + ; to the bad directory if enabled) + + check_crc = true + check_size = true + + ; If this is true, then files that are FROM an unknown node will still be + ; processed. If false, they will be moved to the bad directory or deleted + ; depending on configuration. An "unsecure" node is one that is not directly + ; configured within your echomail nodes configuration. + + allow_unsecure = false + + ; If this is true, then Mystic will allow the REPLACE TIC option, which will + ; remove and replace files by the specified file mask. + + allow_replace = true + + ; If true, then Mystic will attempt to autocreate file bases when a file is + ; found for an Area that does not already exist. If an unknown file is found + ; and this option is disabled, the file will be considered a failure, and will + ; be ignored/moved to bad directory (if enabled) + + auto_create = true + + ; The directory prefix for auto-created bases. This will be used with the + ; areatag appended onto it, so for example if prefix was set to: + ; + ; dir_prefix=c:\bbs\files\fdn_ + ; + ; And the areatag was "nodelist", Mystic would create and the use path: + ; c:\bbs\files\fdn_nodelist\ + ; + ; And the datafile would be fdn_nodelist + + dir_prefix = /mystic/files/fdn/fdn_ + + ; Auto create base options + + dispfile = + template = ansiflst + acs_list = s10z6 + acs_ftp = s20z6 + acs_download = s20z6 + acs_upload = s255z6 + acs_hatch = s255z6 + acs_sysop = s255z6 + + ; true/false type values 0=false 1=true (newscan 2=forced) + + free_files = 0 + show_uploader = 1 + new_scan = 1 + + ; Node-specific options allow some options to be overridden when a file is + ; coming from a specific node. These options should be prefixed with the + ; address, examples for each supported option are listed below in comments + + ;46:100/1_bad_dir = d:\mystic\files\badfile_agoranet\ + ;46:100/1_dir_prefix = d:\mystic\files\agora_ + ;46:100/1_allow_replace = true + ;46:100/1_acs_list = s10z2 + ;46:100/1_acs_ftp = s20z2 + ;46:100/1_acs_download = s20z2 + ;46:100/1_acs_upload = s20z2 + ;46:100/1_acs_hatch = s20z2 + ;46:100/1_acs_sysop = s255z2 + + ; fsxNet + + 21:1/100_bad_dir = /mystic/files/fsx/badfile + 21:1/100_dir_prefix = /mystic/files/fsx/ + 21:1/100_allow_replace = true + 21:1/100_acs_list = s10z2 + 21:1/100_acs_ftp = s20z2 + 21:1/100_acs_download = s20z2 + 21:1/100_acs_upload = s255z2 + 21:1/100_acs_hatch = s255z2 + 21:1/100_acs_sysop = s255z2 + + ; FidoNet (Vince) + + 2:250/1_bad_dir = /mystic/files/fdn/badfile + 2:250/1_dir_prefix = /mystic/files/fdn/ + 2:250/1_allow_replace = true + 2:250/1_acs_list = s10z6 + 2:250/1_acs_ftp = s20z6 + 2:250/1_acs_download = s20z6 + 2:250/1_acs_upload = s255z6 + 2:250/1_acs_hatch = s255z6 + 2:250/1_acs_sysop = s255z6 + + ; FidoNet (Dan) + + 1:317/3_bad_dir = /mystic/files/fdn/badfile + 1:317/3_dir_prefix = /mystic/files/fdn/ + 1:317/3_allow_replace = true + 1:317/3_acs_list = s10z6 + 1:317/3_acs_ftp = s20z6 + 1:317/3_acs_download = s20z6 + 1:317/3_acs_upload = s255z6 + 1:317/3_acs_hatch = s255z6 + 1:317/3_acs_sysop = s255z6 + + ; RetroNet + + 80:774/1_bad_dir = /mystic/files/rtn/badfile + 80:774/1_dir_prefix = /mystic/files/rtn/ + 80:774/1_allow_replace = true + 80:774/1_acs_list = s10z4 + 80:774/1_acs_ftp = s20z4 + 80:774/1_acs_download = s20z4 + 80:774/1_acs_upload = s255z4 + 80:774/1_acs_hatch = s255z4 + 80:774/1_acs_sysop = s255z4 + + ; tqwNet + + 1337:1/100_bad_dir = /mystic/files/tqw/badfile + 1337:1/100_dir_prefix = /mystic/files/tqw/ + 1337:1/100_allow_replace = true + 1337:1/100_acs_list = s10z5 + 1337:1/100_acs_ftp = s20z5 + 1337:1/100_acs_download = s20z5 + 1337:1/100_acs_upload = s255z5 + 1337:1/100_acs_hatch = s255z5 + 1337:1/100_acs_sysop = s255z5 + + ; ArakNet + + 10:104/0_bad_dir = /mystic/files/ark/badfile + 10:104/0_dir_prefix = /mystic/files/ark/ + 10:104/0_allow_replace = true + 10:104/0_acs_list = s10z7 + 10:104/0_acs_ftp = s20z7 + 10:104/0_acs_download = s20z7 + 10:104/0_acs_upload = s255z7 + 10:104/0_acs_hatch = s255z7 + 10:104/0_acs_sysop = s255z7 + + ; AgoraNet + + 46:1/156_bad_dir = /mystic/files/agn/badfile + 46:1/156_dir_prefix = /mystic/files/agn/ + 46:1/156_allow_replace = true + 46:1/156_acs_list = s10z8 + 46:1/156_acs_ftp = s20z8 + 46:1/156_acs_download = s20z8 + 46:1/156_acs_upload = s255z8 + 46:1/156_acs_hatch = s255z8 + 46:1/156_acs_sysop = s255z8 + + ; VKRadio + + 432:1/100_bad_dir = /mystic/files/vkr/badfile + 432:1/100_dir_prefix = /mystic/files/vkr/ + 432:1/100_allow_replace = true + 432:1/100_acs_list = s10z9 + 432:1/100_acs_ftp = s20z9 + 432:1/100_acs_download = s20z9 + 432:1/100_acs_upload = s255z9 + 432:1/100_acs_hatch = s255z9 + 432:1/100_acs_sysop = s255z9 + + ; Sp00kNet + + 700:100/0_bad_dir = /mystic/files/spn/badfile + 700:100/0_dir_prefix = /mystic/files/spn/ + 700:100/0_allow_replace = true + 700:100/0_acs_list = s10z10 + 700:100/0_acs_ftp = s20z10 + 700:100/0_acs_download = s20z10 + 700:100/0_acs_upload = s255z10 + 700:100/0_acs_hatch = s255z10 + 700:100/0_acs_sysop = s255z10 + + ; WhispNet 316:36/1 + + 316:36/1_bad_dir = /mystic/files/wen/badfile + 316:36/1_dir_prefix = /mystic/files/wen/ + 316:36/1_allow_replace = true + 316:36/1_acs_list = s10z11 + 316:36/1_acs_ftp = s20z11 + 316:36/1_acs_download = s20z11 + 316:36/1_acs_upload = s255z11 + 316:36/1_acs_hatch = s255z11 + 316:36/1_acs_sysop = s255z11 + + ; mysdev 113:100/0 + + 113:100/0_bad_dir = /mystic/files/mysdev/badfile + 113:100/0_dir_prefix = /mystic/files/mysdev/ + 113:100/0_allow_replace = true + 113:100/0_acs_list = s10z16 + 113:100/0_acs_ftp = s20z16 + 113:100/0_acs_download = s20z16 + 113:100/0_acs_upload = s255z16 + 113:100/0_acs_hatch = s255z16 + 113:100/0_acs_sysop = s255z16 + + ; sportnet 24:24/1 + + 24:24/1_bad_dir = /mystic/files/sportnet/badfile + 24:24/1_dir_prefix = /mystic/files/sportnet/ + 24:24/1_allow_replace = true + 24:24/1_acs_list = s10z20 + 24:24/1_acs_ftp = s20z20 + 24:24/1_acs_download = s20z20 + 24:24/1_acs_upload = s255z20 + 24:24/1_acs_hatch = s255z20 + 24:24/1_acs_sysop = s255z20 + diff --git a/linkmessages.ini b/linkmessages.ini new file mode 100644 index 0000000..9fe4fdd --- /dev/null +++ b/linkmessages.ini @@ -0,0 +1,4 @@ +[General] + LinkMessages = true + +[LinkMessages] diff --git a/mailin.ini b/mailin.ini new file mode 100644 index 0000000..cc4abdf --- /dev/null +++ b/mailin.ini @@ -0,0 +1,484 @@ +[General] + + ; list of functions to perform on startup + + ImportEchoMail = true + FileToss = true + + ; Set this value if you want to run mutil from a directory other than + ; the root Mystic directory or the mysticbbs environment variable: + + ; mystic_directory=c:\mystic\mystic.dat + + ; If no directory is specified in the logfile name, mUtil will attempt + ; to use the configured LOGS directory from in Mystic's configuration. + ; Comment out to disable logging completely. + + logfile=mutil.log + + ; If set to TRUE (*HIGHLY* recommended for MUTIL) then it will write the + ; log file in increments of 8KB at a time. If set to FALSE it will write + ; each individual line as it is logged. This will significantly reduce + ; MUTIL performance if set to FALSE. + + logcache=true + + ; Level 1 = basic + ; Level 2 = verbose + ; Level 3 = debug + + loglevel=3 + + ; logfile time stamp. defaults to NNN DD HH:II:SS if not set here + ;logstamp = YYYYHHMMHHIISS + + ; Log roller type: + ; 0 = Do not roll log files + ; 1 = Roll by number of files/filesize + ; 2 = Roll by number of days + + logtype = 2 + + ; number of log files to keep (0 to disable log rolling) + maxlogfiles = 31 + + ; size of each log file in kilobytes + maxlogsize = 1500 + +; ========================================================================== +; ========================================================================== +; ========================================================================== +[ImportEchoMail] + + ; If you want to save duplicated / bad messages to a certain message + ; base, then set this value to the *INDEX* of the message base (viewable + ; at the top of the msgbase editor). Otherwise, set this value to -1 + ; or leave it commented out and they will be ignored. + + dupe_msg_index = 17 + + ; This defines the number of messages to keep in the duplicate database. + ; Each message takes 8 bytes of data, so for example 32,000 messages takes + ; 256kb of memory while importing messages. Max is 250,000 messages. + + dupe_db_size = 32000 + + ; Toss packets from unsecure directory in addition to inbound? + + unsecure_dir = true + + ; Strip SEEN-BY lines from messages when importing? + + strip_seenby = false + + ; Rescan command to use when someone does a full %RESCAN on all bases + ; This must be a valid command (ie R= D= or else the rescan + ; will refuse to perform any action. The default is the last 250 messages + ; for each base. Setting it to D=90 for example would give the last 90 + ; days of messages. If you want the default to send every message in the + ; base, then set it to go back a ridiculous number of messages R=999999999 + + default_rescan = R=250 + + ; If you want to remap netmail from one user name to another, you can + ; define up to 50 remapped names below using the format ; + ; Names are case insensitive. + ; + forward = sysop;MeaTLoTioN + forward = system operator;MeaTLoTioN + forward = MeatLotion;MeaTLoTioN + forward = MeaTLoTioN;Christian Sacks + forward = Christain Sacks;Christian Sacks + forward = MeaTLotion;MeaTLoTioN + + ; If you want to twit filter names so that messages are not imported + ; or tossed to downlinks, then you can do one per line here, up to + ; 100. Example: + + ;twit=John Guillory + ;twit=kf5qeo + ;twit=1:396/60 + ;twit=46:1/138 + + ; If you want MUTIL to auto create message bases when it finds an + ; echomail message for a non-existing base, set this value to true + ; and use the options below to define the default values + + auto_create = true + + ; Convert filenames to lowercased 1=true + + lowercase_filename = 1 + + acs_list = s255 + acs_read = s255 + acs_post = s255 + acs_sysop = s255 + header = msghead + read_template = ansimrd + index_template = ansimlst + max_msgs = 30000 + max_msgs_age = 0 + + ; true/false type values 0=false 1=true (newscan 2=forced) + + use_autosig = 1 + use_realname = 0 + kill_kludge = 1 + new_scan = 1 + qwk_scan = 1 + + ; If you want to create settings specific to certain node addresses you can! + ; For example, if you want auto created bases that are linked to your AgoraNet + ; address of 46:999/999 then you can by prefixing with the address: + + ; fsxNet + + 21:1/158_acs_list = s10g1 + 21:1/158_acs_read = s10g1 + 21:1/158_acs_post = s10g1 + 21:1/158_acs_news = s10g1 + 21:1/158_acs_sysop = s255g1 + 21:1/158_use_realname = 0 + + ; FidoNet + + 2:250/5_acs_list = s10g6 + 2:250/5_acs_read = s10g6 + 2:250/5_acs_post = s10g6 + 2:250/5_acs_news = s10g6 + 2:250/5_acs_sysop = s255g6 + 2:250/5_use_realname = 1 + + ; RetroNet + + 80:774/81_acs_list = s10g4 + 80:774/81_acs_read = s10g4 + 80:774/81_acs_post = s10g4 + 80:774/81_acs_news = s10g4 + 80:774/81_acs_sysop = s255g4 + 80:774/81_use_realname = 0 + + ; tqwNet 1/0 + + ;1337:1/0_acs_list = s10g5 + ;1337:1/0_acs_read = s10g5 + ;1337:1/0_acs_post = s10g5 + ;1337:1/0_acs_news = s10g5 + ;1337:1/0_acs_sysop = s255g5 + ;1337:1/0_use_realname = 0 + + ; tqwNet 1/100 + + 1337:1/100_acs_list = s10g5 + 1337:1/100_acs_read = s10g5 + 1337:1/100_acs_post = s10g5 + 1337:1/100_acs_news = s10g5 + 1337:1/100_acs_sysop = s255g5 + 1337:1/100_use_realname = 0 + + ; ArakNet 10:104/2 + + 10:104/2_acs_list = s10g7 + 10:104/2_acs_read = s10g7 + 10:104/2_acs_post = s10g7 + 10:104/2_acs_news = s10g7 + 10:104/2_acs_sysop = s255g7 + 10:104/2_use_realname = 0 + + ; AgoraNet 46:20/106 + + 46:20/106_acs_list = s10g8 + 46:20/106_acs_read = s10g8 + 46:20/106_acs_post = s10g8 + 46:20/106_acs_news = s10g8 + 46:20/106_acs_sysop = s255g8 + 46:20/106_use_realname = 0 + + ; VKRadio 432:1/137 + + 432:1/137_acs_list = s10g9 + 432:1/137_acs_read = s10g9 + 432:1/137_acs_post = s10g9 + 432:1/137_acs_news = s10g9 + 432:1/137_acs_sysop = s255g9 + 432:1/137_use_realname = 0 + + ; Sp00kNet 700:100/37 + + 700:100/37_acs_list = s10g10 + 700:100/37_acs_read = s10g10 + 700:100/37_acs_post = s10g10 + 700:100/37_acs_news = s10g10 + 700:100/37_acs_sysop = s255g10 + 700:100/37_use_realname = 0 + + ; WhispNet 316:36/25 + + 316:36/25_acs_list = s10g11 + 316:36/25_acs_read = s10g11 + 316:36/25_acs_post = s10g11 + 316:36/25_acs_news = s10g11 + 316:36/25_acs_sysop = s255g11 + 316:36/25_use_realname = 0 + + ; mysdev 113:100/100 + + 113:100/100_acs_list = s10g12 + 113:100/100_acs_read = s10g12 + 113:100/100_acs_post = s10g12 + 113:100/100_acs_news = s10g12 + 113:100/100_acs_sysop = s255g12 + 113:100/100_use_realname = 0 + + ; sportnet 24:110/14 + + 24:110/14_acs_list = s10g14 + 24:110/14_acs_read = s10g14 + 24:110/14_acs_post = s10g14 + 24:110/14_acs_news = s10g14 + 24:110/14_acs_sysop = s255g14 + 24:110/14_use_realname = 0 + + +; ========================================================================== +; ========================================================================== +; ========================================================================== +[FileToss] + + ; Processes .TIC files from incoming directories and move/upload files to the + ; appropriate file bases (optionally creating them). Files are then tossed + ; to the fileboxes of all downlinks connected to the file base. + + ; Directory where failed files are moved, or comment out to disable archive of + ; failed files. This includes incorrect file sizes, bad CRC, missing area + ; when auto-create is disabled, duplicate files, unsecured, etc. + + bad_dir=/mystic/files/badfile + + ; Toss TIC from unsecure directory in addition to inbound? + + unsecure_dir = false + + ; File description to use when no DIZ, long description or description can be + ; found from the file or .TIC file. + + no_desc=No Description + + ; Name of the uploader to use when adding TIC files into the local file bases + + uploader=tqwNet TIC + + ; Check size and CRC values supplied in TIC file (if found) against the actual + ; file. If the value does not match, then skip tossing the file (moving it + ; to the bad directory if enabled) + + check_crc = true + check_size = true + + ; If this is true, then files that are FROM an unknown node will still be + ; processed. If false, they will be moved to the bad directory or deleted + ; depending on configuration. An "unsecure" node is one that is not directly + ; configured within your echomail nodes configuration. + + allow_unsecure = false + + ; If this is true, then Mystic will allow the REPLACE TIC option, which will + ; remove and replace files by the specified file mask. + + allow_replace = true + + ; If true, then Mystic will attempt to autocreate file bases when a file is + ; found for an Area that does not already exist. If an unknown file is found + ; and this option is disabled, the file will be considered a failure, and will + ; be ignored/moved to bad directory (if enabled) + + auto_create = true + + ; The directory prefix for auto-created bases. This will be used with the + ; areatag appended onto it, so for example if prefix was set to: + ; + ; dir_prefix=c:\bbs\files\fdn_ + ; + ; And the areatag was "nodelist", Mystic would create and the use path: + ; c:\bbs\files\fdn_nodelist\ + ; + ; And the datafile would be fdn_nodelist + + dir_prefix = /mystic/files/ + + ; Auto create base options + + dispfile = + template = ansiflst + acs_list = s10z6 + acs_ftp = s10z6 + acs_download = s10z6 + acs_upload = s255z6 + acs_hatch = s255z6 + acs_sysop = s255z6 + + ; true/false type values 0=false 1=true (newscan 2=forced) + + free_files = 0 + show_uploader = 1 + new_scan = 1 + + ; Node-specific options allow some options to be overridden when a file is + ; coming from a specific node. These options should be prefixed with the + ; address, examples for each supported option are listed below in comments + + ;46:100/1_bad_dir = d:\mystic\files\badfile_agoranet\ + ;46:100/1_dir_prefix = d:\mystic\files\agora_ + ;46:100/1_allow_replace = true + ;46:100/1_acs_list = s20z2 + ;46:100/1_acs_ftp = s20z2 + ;46:100/1_acs_download = s20z2 + ;46:100/1_acs_upload = s20z2 + ;46:100/1_acs_hatch = s20z2 + ;46:100/1_acs_sysop = s255z2 + + ; fsxNet + + 21:1/100_bad_dir = /mystic/files/fsx/badfile + 21:1/100_dir_prefix = /mystic/files/fsx/ + 21:1/100_allow_replace = true + 21:1/100_acs_list = s10z2 + 21:1/100_acs_ftp = s20z2 + 21:1/100_acs_download = s20z2 + 21:1/100_acs_upload = s255z2 + 21:1/100_acs_hatch = s255z2 + 21:1/100_acs_sysop = s255z2 + + ; FidoNet (Vince) + + 2:250/1_bad_dir = /mystic/files/fdn/badfile + 2:250/1_dir_prefix = /mystic/files/fdn/ + 2:250/1_allow_replace = true + 2:250/1_acs_list = s10z6 + 2:250/1_acs_ftp = s20z6 + 2:250/1_acs_download = s20z6 + 2:250/1_acs_upload = s255z6 + 2:250/1_acs_hatch = s255z6 + 2:250/1_acs_sysop = s255z6 + + ; FidoNet (Dan) + + 1:317/3_bad_dir = /mystic/files/fdn/badfile + 1:317/3_dir_prefix = /mystic/files/fdn/ + 1:317/3_allow_replace = true + 1:317/3_acs_list = s10z6 + 1:317/3_acs_ftp = s20z6 + 1:317/3_acs_download = s20z6 + 1:317/3_acs_upload = s255z6 + 1:317/3_acs_hatch = s255z6 + 1:317/3_acs_sysop = s255z6 + + ; RetroNet + + 80:774/1_bad_dir = /mystic/files/rtn/badfile + 80:774/1_dir_prefix = /mystic/files/rtn/ + 80:774/1_allow_replace = true + 80:774/1_acs_list = s10z4 + 80:774/1_acs_ftp = s20z4 + 80:774/1_acs_download = s20z4 + 80:774/1_acs_upload = s255z4 + 80:774/1_acs_hatch = s255z4 + 80:774/1_acs_sysop = s255z4 + + ; tqwNet + + 1337:1/100_bad_dir = /mystic/files/tqw/badfile + 1337:1/100_dir_prefix = /mystic/files/tqw/ + 1337:1/100_allow_replace = true + 1337:1/100_acs_list = s10z5 + 1337:1/100_acs_ftp = s20z5 + 1337:1/100_acs_download = s20z5 + 1337:1/100_acs_upload = s255z5 + 1337:1/100_acs_hatch = s255z5 + 1337:1/100_acs_sysop = s255z5 + + ; ArakNet + + 10:104/0_bad_dir = /mystic/files/ark/badfile + 10:104/0_dir_prefix = /mystic/files/ark/ + 10:104/0_allow_replace = true + 10:104/0_acs_list = s10z7 + 10:104/0_acs_ftp = s20z7 + 10:104/0_acs_download = s20z7 + 10:104/0_acs_upload = s255z7 + 10:104/0_acs_hatch = s255z7 + 10:104/0_acs_sysop = s255z7 + + ; AgoraNet + + 46:1/156_bad_dir = /mystic/files/agn/badfile + 46:1/156_dir_prefix = /mystic/files/agn/ + 46:1/156_allow_replace = true + 46:1/156_acs_list = s10z8 + 46:1/156_acs_ftp = s20z8 + 46:1/156_acs_download = s20z8 + 46:1/156_acs_upload = s255z8 + 46:1/156_acs_hatch = s255z8 + 46:1/156_acs_sysop = s255z8 + + ; VKRadio + + 432:1/100_bad_dir = /mystic/files/vkr/badfile + 432:1/100_dir_prefix = /mystic/files/vkr/ + 432:1/100_allow_replace = true + 432:1/100_acs_list = s10z9 + 432:1/100_acs_ftp = s20z9 + 432:1/100_acs_download = s20z9 + 432:1/100_acs_upload = s255z9 + 432:1/100_acs_hatch = s255z9 + 432:1/100_acs_sysop = s255z9 + + ; Sp00kNet + + 700:100/0_bad_dir = /mystic/files/spn/badfile + 700:100/0_dir_prefix = /mystic/files/spn/ + 700:100/0_allow_replace = true + 700:100/0_acs_list = s10z10 + 700:100/0_acs_ftp = s20z10 + 700:100/0_acs_download = s20z10 + 700:100/0_acs_upload = s255z10 + 700:100/0_acs_hatch = s255z10 + 700:100/0_acs_sysop = s255z10 + + ; WhispNet 316:36/1 + + 316:36/1_bad_dir = /mystic/files/wen/badfile + 316:36/1_dir_prefix = /mystic/files/wen/ + 316:36/1_allow_replace = true + 316:36/1_acs_list = s10z11 + 316:36/1_acs_ftp = s20z11 + 316:36/1_acs_download = s20z11 + 316:36/1_acs_upload = s255z11 + 316:36/1_acs_hatch = s255z11 + 316:36/1_acs_sysop = s255z11 + + ; mysdev 113:100/0 + + 113:100/0_bad_dir = /mystic/files/mysdev/badfile + 113:100/0_dir_prefix = /mystic/files/mysdev/ + 113:100/0_allow_replace = true + 113:100/0_acs_list = s10z16 + 113:100/0_acs_ftp = s20z16 + 113:100/0_acs_download = s20z16 + 113:100/0_acs_upload = s255z16 + 113:100/0_acs_hatch = s255z16 + 113:100/0_acs_sysop = s255z16 + + ; sportnet 24:24/1 + + 24:24/1_bad_dir = /mystic/files/sportnet/badfile + 24:24/1_dir_prefix = /mystic/files/sportnet/ + 24:24/1_allow_replace = true + 24:24/1_acs_list = s10z20 + 24:24/1_acs_ftp = s20z20 + 24:24/1_acs_download = s20z20 + 24:24/1_acs_upload = s255z20 + 24:24/1_acs_hatch = s255z20 + 24:24/1_acs_sysop = s255z20 + diff --git a/mailout.ini b/mailout.ini new file mode 100644 index 0000000..96d100c --- /dev/null +++ b/mailout.ini @@ -0,0 +1,53 @@ +[General] + + ; list of functions to perform on startup + + ExportEchoMail = true + + ; Set this value if you want to run mutil from a directory other than + ; the root Mystic directory or the mysticbbs environment variable: + + ; mystic_directory=c:\mystic\mystic.dat + + ; If no directory is specified in the logfile name, mUtil will attempt + ; to use the configured LOGS directory from in Mystic's configuration. + ; Comment out to disable logging completely. + + logfile=mutil.log + + ; If set to TRUE (*HIGHLY* recommended for MUTIL) then it will write the + ; log file in increments of 8KB at a time. If set to FALSE it will write + ; each individual line as it is logged. This will significantly reduce + ; MUTIL performance if set to FALSE. + + logcache=true + + ; Level 1 = basic + ; Level 2 = verbose + ; Level 3 = debug + + loglevel=3 + + ; logfile time stamp. defaults to NNN DD HH:II:SS if not set here + ;logstamp = YYYYHHMMHHIISS + + ; Log roller type: + ; 0 = Do not roll log files + ; 1 = Roll by number of files/filesize + ; 2 = Roll by number of days + + logtype = 2 + + ; number of log files to keep (0 to disable log rolling) + maxlogfiles = 31 + + ; size of each log file in kilobytes + maxlogsize = 1500 + +; ========================================================================== +; ========================================================================== +; ========================================================================== +[ExportEchoMail] + + ; Do not export messages from users currently online + skip_online = false diff --git a/maint.ini b/maint.ini new file mode 100644 index 0000000..7561f97 --- /dev/null +++ b/maint.ini @@ -0,0 +1,151 @@ +[General] + + ; list of functions to perform on startup + + PurgeMessageBases = true + PackMessageBases = true + MergeNodeLists = true + PackFileBases = true + LinkMessages = true + FileSort = true + + ; Set this value if you want to run mutil from a directory other than + ; the root Mystic directory or the mysticbbs environment variable: + + ; mystic_directory=c:\mystic\mystic.dat + + ; If no directory is specified in the logfile name, mUtil will attempt + ; to use the configured LOGS directory from in Mystic's configuration. + ; Comment out to disable logging completely. + + logfile=mutil.log + + ; If set to TRUE (*HIGHLY* recommended for MUTIL) then it will write the + ; log file in increments of 8KB at a time. If set to FALSE it will write + ; each individual line as it is logged. This will significantly reduce + ; MUTIL performance if set to FALSE. + + logcache=true + + ; Level 1 = basic + ; Level 2 = verbose + ; Level 3 = debug + + loglevel=3 + + ; logfile time stamp. defaults to NNN DD HH:II:SS if not set here + ;logstamp = YYYYHHMMHHIISS + + ; Log roller type: + ; 0 = Do not roll log files + ; 1 = Roll by number of files/filesize + ; 2 = Roll by number of days + + logtype = 2 + + ; number of log files to keep (0 to disable log rolling) + maxlogfiles = 31 + + ; size of each log file in kilobytes + maxlogsize = 1500 + +; ========================================================================== +; ========================================================================== +; ========================================================================== +[PurgeMessageBases] + + ; No options for this function + +; ========================================================================== +; ========================================================================== +; ========================================================================== +[PackMessageBases] + + ; No options for this function + +; ========================================================================== +; ========================================================================== +; ========================================================================== +[MergeNodeLists] + + ; Finds the latest nodelists and merges them together in the mystic data + ; folder. + ; + ; Set nodefile value one per line. The value should contain the full path + ; and the base filename of the nodelist. + ; + ; examples: + ; nodefile=c:\nodelist\nodelist + ; nodefile=c:\nodelist\agoranet + ; + ; The above example will search in c:\nodelist and select the latest + ; nodelist.### and agoranet.### nodelists. This comparison is first done + ; by checking the day extension. If the extension is archived (.z12, etc) + ; it will be unarchived before comparison. + ; + ; After decompressing, the 3-digit day extensions are compared, selecting + ; the highest number. It will also compare the years of the file dates, + ; and select the newest option. So if you have nodelist.025 dated 2013 + ; and also nodelist.320 dated 2012, nodelist.025 will be selected. + ; + ; The same process is then be repeated for agoranet.### and once all of + ; the defined 'nodefiles' are processed, they will be merged together and + ; copied into Mystic's DATA folder so it can be used for nodelist lookups. + ; + ; If no nodelists are found, Mystic will not overwrite the current + ; nodelist. Comments are stripped while merging to lower filesize and + ; increase search performance. + + ; Strip nodes marked as DOWN? + strip_down = true + + ; Strip nodes marked as PRIVATE? + strip_private = true + + nodefile=/mystic/files/fsx/fsx_node/FSXNET + nodefile=/mystic/files/rtn/rtn_nodelist/retronet + nodefile=/mystic/files/tqw/tqw_node/tqwnet + nodefile=/mystic/files/fdn/fdn_nodelist/ZONE2 + nodefile=/mystic/files/fdn/fdn_nodelist/NODELIST + nodefile=/mystic/files/NODELISZ + nodefile=/mystic/files/ark/ark_nodelist/araknet + nodefile=/mystic/files/agn/AGN_NODE/AGORANET + nodefile=/mystic/files/vkr/vk_node/VKRADIO + nodefile=/mystic/files/sportnet/SPORNODE/sportnet + + + +; ========================================================================== +; ========================================================================== +; ========================================================================== +[PackFileBases] + + ; If true, MUTIL will check to make sure files exist, and will update their + ; file size in the listing, optionally removing missing files (remove_missing) + + check_files = true + + ; If true, MUTIL will remove any files which do not exist from the file + ; list database while checking integrity. Otherwise they will be flagged as + ; OFFLINE in the file listing. 0 byte files are considered "missing" + + remove_missing = false + +; ========================================================================== +; ========================================================================== +; ========================================================================== +[LinkMessages] + + ; This function has no options + +; ========================================================================== +; ========================================================================== +; ========================================================================== +[FileSort] + + ; Sort on which attribute (0=filename 1=size 2=date 3=downloads) + attribute = 0 + + ; Sort direction 0=Ascending (A to Z, 1 to 10) 1=Descending (Z to A, 10 to 1) + direction = 0 + diff --git a/mergenodelist.ini b/mergenodelist.ini new file mode 100644 index 0000000..2fe087a --- /dev/null +++ b/mergenodelist.ini @@ -0,0 +1,116 @@ +[General] + + ; list of functions to perform on startup + + Import_FIDONET.NA = false + Import_MessageBase = false + Import_FILEBONE.NA = false + Import_FILES.BBS = false + MassUpload = false + GenerateTopLists = false + GenerateAllFiles = false + PurgeMessageBases = false + PostTextFiles = false + PackMessageBases = false + ImportEchoMail = false + ExportEchoMail = false + MergeNodeLists = true + FileToss = false + PackFileBases = false + FileSort = false + LinkMessages = false + PurgeUserBase = false + PackUserBase = false + + ; Set this value if you want to run mutil from a directory other than + ; the root Mystic directory or the mysticbbs environment variable: + + ; mystic_directory=c:\mystic\mystic.dat + + ; If no directory is specified in the logfile name, mUtil will attempt + ; to use the configured LOGS directory from in Mystic's configuration. + ; Comment out to disable logging completely. + + logfile=mutil.log + + ; If set to TRUE (*HIGHLY* recommended for MUTIL) then it will write the + ; log file in increments of 8KB at a time. If set to FALSE it will write + ; each individual line as it is logged. This will significantly reduce + ; MUTIL performance if set to FALSE. + + logcache=true + + ; Level 1 = basic + ; Level 2 = verbose + ; Level 3 = debug + + loglevel=3 + + ; logfile time stamp. defaults to NNN DD HH:II:SS if not set here + ;logstamp = YYYYHHMMHHIISS + + ; Log roller type: + ; 0 = Do not roll log files + ; 1 = Roll by number of files/filesize + ; 2 = Roll by number of days + + logtype = 2 + + ; number of log files to keep (0 to disable log rolling) + maxlogfiles = 31 + + ; size of each log file in kilobytes + maxlogsize = 1500 + +; ========================================================================== +; ========================================================================== +; ========================================================================== +[MergeNodeLists] + + ; Finds the latest nodelists and merges them together in the mystic data + ; folder. + ; + ; Set nodefile value one per line. The value should contain the full path + ; and the base filename of the nodelist. + ; + ; examples: + ; nodefile=c:\nodelist\nodelist + ; nodefile=c:\nodelist\agoranet + ; + ; The above example will search in c:\nodelist and select the latest + ; nodelist.### and agoranet.### nodelists. This comparison is first done + ; by checking the day extension. If the extension is archived (.z12, etc) + ; it will be unarchived before comparison. + ; + ; After decompressing, the 3-digit day extensions are compared, selecting + ; the highest number. It will also compare the years of the file dates, + ; and select the newest option. So if you have nodelist.025 dated 2013 + ; and also nodelist.320 dated 2012, nodelist.025 will be selected. + ; + ; The same process is then be repeated for agoranet.### and once all of + ; the defined 'nodefiles' are processed, they will be merged together and + ; copied into Mystic's DATA folder so it can be used for nodelist lookups. + ; + ; If no nodelists are found, Mystic will not overwrite the current + ; nodelist. Comments are stripped while merging to lower filesize and + ; increase search performance. + + ; Strip nodes marked as DOWN? + strip_down = true + + ; Strip nodes marked as PRIVATE? + strip_private = true + + nodefile=/mystic/files/fsx/fsx_node/FSXNET + nodefile=/mystic/files/rtn/rtn_nodelist/retronet + nodefile=/mystic/files/tqw/tqw_node/tqwnet + nodefile=/mystic/files/fdn/fdn_nodelist/ZONE2 + nodefile=/mystic/files/fdn/fdn_nodelist/NODELIST + nodefile=/mystic/files/NODELISZ + nodefile=/mystic/files/ark/ark_nodelist/araknet + nodefile=/mystic/files/agn/AGN_NODE/AGORANET + nodefile=/mystic/files/vkr/vk_node/VKRADIO + nodefile=/mystic/files/sportnet/SPORNODE/sportnet + ;nodefile=/mystic/files/fdn/fdn_nodelist/NODEDIFF + ;nodefile=/mystic/files/agn/AGN_DIFF/AGN_DIFF + diff --git a/mide.ini b/mide.ini new file mode 100644 index 0000000..d89b8e8 --- /dev/null +++ b/mide.ini @@ -0,0 +1,50 @@ +; MIDE configuration file +; ======================= +; +; If you are editing this from within MIDE, make sure to save the file. The +; editor will need to be restarted for changes to take effect. + +[General] + + ; Unix: Codepage set to CP437 or UTF8 to force output mode or leave blank + ; for OS default. + ; codepage = cp437 + + ; tab space size in characters + tab_spaces = 2 + + ; auto indent on new lines + auto_indent = true + + ; do syntax highlighting (note does not support block comments) + ; and is substancially slower in screen updates + + syntax_highlight = true + +[Colors] + + ; syntax highlighting colors (text attributes 0-255) + ; attribute = foreground_color + background_color * 16 + ; foreground is 0-15 and background is 0-7 + + syn_normal = 30 + syn_keyword = 31 + syn_number = 19 + syn_comment = 23 + syn_hex = 28 + syn_charstr = 27 + +[Execute] + + ; Sets the username and password to login to the BBS when executing a + ; MPL from within MIDE. It is of course not recommended that you use + ; your SysOp login and password for this. I personally make a Guest + ; account that has restricted access. MPL execution will "assume" the + ; user and password supplied here when executing. + + ; For rootpath, you need to include the directory where the MYSTIC binary + ; exists. + + rootpath = c:\mystic\ + username = sysopname + password = password diff --git a/mutil.ini b/mutil.ini new file mode 100644 index 0000000..e300d11 --- /dev/null +++ b/mutil.ini @@ -0,0 +1,841 @@ +; MUTIL configuration file +; ------------------------------------------------------------------------- +; +; MUTIL is an automated maintainance and utility program driven by +; configuration files used to perform various tasks upon execution. +; +; The syntax to execute MUTIL is: MUTIL . If no +; configuration file is supplied, then the program will look for mutil.ini +; in the same directory. A second parameter -NOSCREEN can be used to turn +; off screen updates but the configuration file parameter MUST be supplied +; ex: mutil mutil.ini -NOSCREEN +; +; Many different configuration files can exist to perform any series of +; tasks supported by MUTIL, or a single configuration can be maintained that +; does everything. The minimum requirement is the General header with a +; task enabled, and then the specific header for that task that defines its +; options. +; +; Current abilities (enabled/disabled in the General header below): +; +; - Export Binkley-style FLO echomail/netmail +; - Import Binkley-style FLO echomail/netmail +; - Import Message Bases (by datafile analysis) +; - Import FIDONET.NA into Message bases +; - Import FILEBONE.NA into File bases +; - Export FILEBONE.NA from File bases +; - Export AREAS.BBSfrom Message Bases +; - Export Golded Areas Configuration from Message Bases +; - Mass upload files to all file bases (with FILE_ID.DIZ import and the +; ability to exclude files by filemask) +; - Generate Top 1 up to 99 Callers, Posters, Downloaders, Uploaders, PCR +; Completely configurable output by using template files +; - Import FILES.BBS into file bases +; - Generate all files listing +; - Purge Message bases (by age and max messages) +; - Pack and renumber message bases +; - Post text files to message bases +; - Merge nodelists into Mystic format +; - Toss TIC+files into BBS and to subscribed downlinks +; - Pack and check integrity of file base listings +; - Sort file base listings +; - Perform message base echomail reply linking +; - Purge user database marking inactive users for deletion +; - Pack user database and remove private messages of deleted users +; - Automatically hatch a list of files to FDN +; +; The concept here is that you can create your own custom command lines to +; complete any number of tasks. For example, you could create msgmaint.ini +; which executes message base purge, packing, and reply linking. Then you +; can simply execute "mutil msgmaint" to kick it off. +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[General] + + ; list of functions to perform on startup + + Import_FIDONET.NA = false + Import_MessageBase = false + Import_FILEBONE.NA = false + Export_FILEBONE.NA = false + Export_AREAS.BBS = false + Export_GOLDED = false + Import_FILES.BBS = false + MassUpload = false + GenerateTopLists = false + GenerateAllFiles = false + PurgeMessageBases = false + PostTextFiles = false + PackMessageBases = false + ImportEchoMail = false + ExportEchoMail = false + MergeNodeLists = false + FileToss = false + PackFileBases = false + FileSort = false + LinkMessages = false + PurgeUserBase = false + PackUserBase = false + AutoHatch = false + EchoNodeTracker = false + + + ; Set this value if you want to run mutil from a directory other than + ; the root Mystic directory or the mysticbbs environment variable: + + ; mystic_directory=c:\mystic\mystic.dat + + ; If no directory is specified in the logfile name, mUtil will attempt + ; to use the configured LOGS directory from in Mystic's configuration. + ; Comment out to disable logging completely. + + logfile=mutil.log + + ; If set to TRUE (*HIGHLY* recommended for MUTIL) then it will write the + ; log file in increments of 8KB at a time. If set to FALSE it will write + ; each individual line as it is logged. This will significantly reduce + ; MUTIL performance if set to FALSE. + + logcache=true + + ; Level 1 = basic + ; Level 2 = verbose + ; Level 3 = debug + ; + ; Note that the loglevel can also be set in a specific stanza and that value + ; will override the value defined here only for that specific stanza + + loglevel=2 + + ; logfile time stamp. defaults to NNN DD HH:II:SS if not set here + ;logstamp = YYYYHHMMHHIISS + + ; Log roller type: + ; 0 = Do not roll log files + ; 1 = Roll by number of files/filesize + ; 2 = Roll by number of days + + logtype = 0 + + ; number of log files to keep (0 to disable log rolling) + maxlogfiles = 3 + + ; size of each log file in kilobytes + maxlogsize = 1000 + +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[Import_FIDONET.NA] + + ; filename to import + + filename = fidonet.na + + ; convert tags to lower case for message base filename 1=yes + + lowercase_filename = 1 + + ; The following options define the "default" values used when creating + ; any new message bases. netaddress must match an exiting network + ; address configured within Mystic BBS. default values are also + ; taken from the system configuration for origin line, colors, etc. + + netaddress = 1:1/1 + acs_list = + acs_read = + acs_post = + acs_sysop = s255 + header = msghead + read_template = ansimrd + index_template = ansimlst + max_msgs = 500 + max_msgs_age = 365 + + ; true/false type values 0=false 1=true (newscan 2=forced) + + use_autosig = 1 + use_realname = 0 + use_ansi = 1 +] private_base = 0 + new_scan = 1 + qwk_scan = 1 + + ; value is either 0 for JAM or 1 for Squish + + base_format = 0 + +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[Import_FILEBONE.NA] + + ; filename of filebone.na + + filename = filebone.na + + ; root directory to create file paths under. when a new filebone echo + ; is found, mUtil will create a file using "root_dir" + areatag. So + ; for example if root is "c:\mystic\filebase\" and the areatag is + ; MYSTICBBS it will create "c:\mystic\filebase\MYSTICBBS". This root + ; directory MUST exist. + + root_dir = c:\mystic\files\ + + ; Use echotag for base description and FTP name + + use_echotag = false + + ; Convert tags to lower case for filebase base filename/dir + ; True or 1 for yes, false or 0 for no + + lowercase_filename = true + + ; Default values when creating a new file base + + dispfile = + template = ansiflst + acs_list = + acs_ftp = + acs_download = + acs_upload = + acs_hatch = + acs_sysop = s255 + + ; true/false type values 0=false 1=true (newscan 2=forced) + + new_scan = 1 + free_files = 0 + show_uploader = 1 + anon_ftp = 0 + +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[Export_FILEBONE.NA] + + ; Path/Filename of NA file to create + + filename = filebone.na + + ; Include only the following zones (separated by commas) + ; If commented out, all network bases that have an echotag and address + ; set will be exported + + ;zones = 0,1,2,3,4 + +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[Export_AREAS.BBS] + + ; Path and filename to create + + filename = areas.bbs + +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[Export_GOLDED] + + ; Path and filename to create + + filename = goldedareas.txt + +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[Import_FILES.BBS] + + ; This function searches the filebase directories for existance of a + ; text-based file listing file (often known as FILES.BBS but other + ; formats can be imported as well + + ; The files must physically exist in the same directory as the file + ; in order for them to be uploaded to the BBS. + + ; Files that have have different file size in the database compared + ; to the physical file can also be updated with the new size and a new + ; file description, useful for using with external TIC processors. + + ; The name of the file to look for in each directory + filesbbs=files.bbs + + ; Upload name for files uploaded by this function + uploader_name = Mystic BBS + + ; Delete the FILES.BBS file after processing + delete_after = false + + ; Update existing files in the database, if their file sizes do not match? + ; Both size and description will be imported + update_files = false + + ; The FILES.BBS format must be configured here using the following options + ; + ; DESC_FIRST: Defines how the first line of the file description is handled. + ; + ; If the value is 0, the importer will expect for the file description to + ; appear directly after the filename (ie, the second "word" on the line). + ; + ; If the value is -1, then the importer will not look for a description on + ; the first line. + ; + ; If the first description line is always at a specific character position + ; on the first line, then DESC_FIRST should contain the character position + + desc_first = 0 + + ; DESC_CHAR: Defines the character identifier for an extended description line + ; if this value is blank, it will mean a space. + + desc_char = + + ; DESC_START: Defines the character position of the extended description line. + ; If a line contains the DESC_CHAR at the DESC_START position, + ; then the importer will copy everything after that as an extended + ; descripttion line. + + desc_start = 14 + +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[MassUpload] + + ; this function searches all configured file directories for new + ; files and will upload them into the BBS. It will attempt to + ; import FILE_ID.DIZ using the configured archivers if the option + ; is enabled. + + ; Name to save has the uploader + + uploader_name = Mystic BBS + + ; Import FILE_ID.DIZ? 1=yes + + import_fileid = 1 + + ; No description string used when no FILE_ID.DIZ is imported. + + no_description = No Description + + ; Ignore list one file mask per line (allows * and ? wildcards) + + ignore = files.bbs + ;ignore = *.readme + +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[GenerateTopLists] + + ; Top list generator can generate up to top 99 for various different + ; statistics. Each individual top file can be enabled or disabled and + ; can each have their own template files that are totally configurable. + ; + ; 1=enable for top_call, top_post, etc. + ; + ; The number of items in each list is determined by the template. It + ; could be any number between 1 and 99. + ; + ; In the templates use @NA01-99 for name and @DA01-99 for numerical data + ; @DE returns the value set as _desc in the configuration. You can look + ; at the provided template as an example. + ; + ; namelen and datalen define the width the MCI code is padded to + ; + ; exclude list is one name per line text file listing names which should + ; not be included in the generated output. lines that begin with a ; + ; are considered comments. + + exclude_list = mutil.toplist.exclude.txt + + ; User name for "no one" when for example you have 3 users and make a + ; top 10 list + + no_user = No one + + ; Sort order. You can use this to calculate top or bottom 99. 1=top + + sort_top=1 + + ; configuration for top callers generator + ; @NA=name @DA=calls + + top_call = 1 + top_call_template = mutil.toplist.txt + top_call_output = topcallers.asc + top_call_desc = Callers + top_call_namelen = 30 + top_call_datalen = 10 + + ; configuration for top downloads + ; @NA=name @DA=downloads + + top_dl = 1 + top_dl_template = mutil.toplist.txt + top_dl_output = topdownload.asc + top_dl_desc = Downloaders + top_dl_namelen = 30 + top_dl_datalen = 10 + + top_ul = 1 + top_ul_template = mutil.toplist.txt + top_ul_output = topupload.asc + top_ul_desc = Uploaders + top_ul_namelen = 30 + top_ul_datalen = 10 + + top_post = 1 + top_post_template = mutil.toplist.txt + top_post_output = topposts.asc + top_post_desc = Posters + top_post_namelen = 30 + top_post_datalen = 10 + + top_pcr = 1 + top_pcr_template = mutil.toplist.txt + top_pcr_output = toppcr.asc + top_pcr_desc = Posts Per Call + top_pcr_namelen = 30 + top_pcr_datalen = 10 + +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[GenerateAllFiles] + + ; Generate all files list + + ; Path / filename of output filename. If the path is not included then the + ; file will be created in whatever the current working directory is. + + filename = allfiles.txt + + ; ideas/features for the future? + ; header, footer, baseheader, basefooter, exclude bases, uploader optional + ; uploader line, format list line 1st,2nd line, space between files? + +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[PurgeMessageBases] + + ; No options for this function + +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[PackMessageBases] + + ; No options for this function + +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[PostTextFiles] + + ; Total number of text files to be posted. For each file there needs to + ; be a file definition as show below. + + totalfiles = 2 + + ; This defines one file which will be posted to the message base. Each + ; file should be prefixed with file# where # is a number from 1 to + ; totalfiles. + ; + ; The delfile option (if true) will remove the filename after the message + ; is posted. The baseidx is the permanent index of the message base to + ; post the message into (shown as Index at the top of the message base + ; editor in Mystic's configuration. Address is the echomail destination + ; address + + file1_name = myfile.txt + file1_baseidx = 2 + file1_from = Sysop + file1_to = All + file1_subj = My subject + file1_addr = 0:0/0 + file1_delfile = false + + file2_name = myfile.txt + file2_baseidx = 2 + file2_from = Sysop + file2_to = All + file2_subj = My subject + file2_addr = 0:0/0 + file2_delfile = false + +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[Import_MessageBase] + + ; This option scans the message base directory, and creates any messages + ; bases inside of Mystic that have data files in the directory. + + search_subdirs = true + + ; The following options define the "default" values used when creating + ; new message bases. netaddress must match an exiting network + ; address configured within Mystic BBS. default values are also + ; taken from the system configuration for origin line, colors, etc. + + netaddress = 1:1/1 + acs_list = + acs_read = + acs_post = + acs_sysop = s255 + header = msghead + read_template = ansimrd + index_template = ansimlst + max_msgs = 500 + max_msgs_age = 365 + + ; network type (0=local, 1=echomail, 2=newsgroup 3=netmail) + + net_type = 1 + + ; true/false type values 0=false 1=true (newscan 2=forced) + + use_autosig = 1 + use_realname = 0 + private_base = 0 + new_scan = 1 + qwk_scan = 1 + use_ansi = 1 + +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[ImportEchoMail] + + ; If you want bad packets that cannot be imported moved to a directory + ; then uncomment and set this value to an existing directory. + + ; bad_packet = c:\mystic\echomail\badpkt + + ; If you want to save duplicated / bad messages to a certain message + ; base, then set this value to the *INDEX* of the message base (viewable + ; at the top of the msgbase editor). Otherwise, set this value to -1 + ; or leave it commented out and they will be ignored. + + ; dupe_msg_index = 5 + + ; This defines the number of messages to keep in the duplicate database. + ; Each message takes 8 bytes of data, so for example 32,000 messages takes + ; 256kb of memory while importing messages. Max is 250,000 messages. + + dupe_db_size = 32000 + + ; Toss packets from unsecure directory in addition to inbound? + + unsecure_dir = true + + ; Strip SEEN-BY lines from messages when importing? + ; Note: This option should never be enabled if you current hub echomail + ; or plan to act as an echo echomail hub for other BBS systems in the + ; future. + + strip_seenby = false + + ; Rescan command to use when someone does a full %RESCAN on all bases + ; This must be a valid command (ie R= D= or else the rescan + ; will refuse to perform any action. The default is the last 250 messages + ; for each base. Setting it to D=90 for example would give the last 90 + ; days of messages. If you want the default to send every message in the + ; base, then set it to go back a ridiculous number of messages R=999999999 + + default_rescan = R=250 + + ; If you want to remap netmail from one user name to another, you can + ; define up to 50 remapped names below using the format ; + ; Names are case insensitive. Fowards can even forward to other systems + ; using the @address. + ; + ;forward = sysop;g00r00 + ;forward = system operator;g00r00 + ;forward = g00r00;g00r00@1:123/123 + + ; If you want to twit filter names so that messages are not imported + ; or tossed to downlinks, then you can do one per line here, up to + ; 100. Example: + + ;twit=John Guillory + ;twit=kf5qeo + ;twit=1:396/60 + ;twit=46:1/138 + + ; If you want MUTIL to auto create message bases when it finds an + ; echomail message for a non-existing base, set this value to true + ; and use the options below to define the default values + + auto_create = true + + ; Convert filenames to lowercased 1=true + + lowercase_filename = 1 + + acs_list = + acs_read = + acs_post = + acs_sysop = s255 + header = msghead + read_template = ansimrd + index_template = ansimlst + max_msgs = 500 + max_msgs_age = 365 + + ; true/false type values 0=false 1=true (newscan 2=forced) + + use_autosig = 1 + use_realname = 0 + use_ansi = 1 + new_scan = 1 + qwk_scan = 1 + + ; If you want to create settings specific to certain node addresses you can! + ; For example, if you want auto created bases that are linked to your AgoraNet + ; address of 46:999/999 then you can by prefixing with the address: + + ;46:999/999_acs_list = + ;46:999/999_acs_read = + ;46:999/999_acs_post = + ;46:999/999_acs_news = + ;46:999/999_acs_sysop = s255 + ;46:999/999_use_realname = 0 + +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[ExportEchoMail] + + ; Do not export messages from users currently online + skip_online = false + +[MergeNodeLists] + + ; Finds the latest nodelists and merges them together in the mystic data + ; folder. + ; + ; Set nodefile value one per line. The value should contain the full path + ; and the base filename of the nodelist. + ; + ; examples: + ; nodefile=c:\nodelist\nodelist + ; nodefile=c:\nodelist\agoranet + ; + ; The above example will search in c:\nodelist and select the latest + ; nodelist.### and agoranet.### nodelists. This comparison is first done + ; by checking the day extension. If the extension is archived (.z12, etc) + ; it will be unarchived before comparison. + ; + ; After decompressing, the 3-digit day extensions are compared, selecting + ; the highest number. It will also compare the years of the file dates, + ; and select the newest option. So if you have nodelist.025 dated 2013 + ; and also nodelist.320 dated 2012, nodelist.025 will be selected. + ; + ; The same process is then be repeated for agoranet.### and once all of + ; the defined 'nodefiles' are processed, they will be merged together and + ; copied into Mystic's DATA folder so it can be used for nodelist lookups. + ; + ; If no nodelists are found, Mystic will not overwrite the current + ; nodelist. Comments are stripped while merging to lower filesize and + ; increase search performance. + + ; Strip nodes marked as DOWN? + strip_down = true + + ; Strip nodes marked as PRIVATE? + strip_private = true + + nodefile=d:\nodelists\nodelist + nodefile=d:\nodelists\agoranet + +[FileToss] + + ; Processes .TIC files from incoming directories and move/upload files to the + ; appropriate file bases (optionally creating them). Files are then tossed + ; to the fileboxes of all downlinks connected to the file base. + + ; Directory where failed files are moved, or comment out to disable archive of + ; failed files. This includes incorrect file sizes, bad CRC, missing area + ; when auto-create is disabled, duplicate files, unsecured, etc. + + bad_dir=d:\mystic\files\badfile + + ; Toss TIC from unsecure directory in addition to inbound? + + unsecure_dir = false + + ; File description to use when no DIZ, long description or description can be + ; found from the file or .TIC file. + + no_desc=No Description + + ; Name of the uploader to use when adding TIC files into the local file bases + + uploader=Mystic TIC + + ; Check size and CRC values supplied in TIC file (if found) against the actual + ; file. If the value does not match, then skip tossing the file (moving it + ; to the bad directory if enabled) + + check_crc = true + check_size = true + + ; If this is true, then files that are FROM an unknown node will still be + ; processed. If false, they will be moved to the bad directory or deleted + ; depending on configuration. An "unsecure" node is one that is not directly + ; configured within your echomail nodes configuration. + + allow_unsecure = false + + ; If this is true, then Mystic will allow the REPLACE TIC option, which will + ; remove and replace files by the specified file mask. + + allow_replace = true + + ; If true, then Mystic will attempt to autocreate file bases when a file is + ; found for an Area that does not already exist. If an unknown file is found + ; and this option is disabled, the file will be considered a failure, and will + ; be ignored/moved to bad directory (if enabled) + + auto_create = true + + ; The directory prefix for auto-created bases. This will be used with the + ; areatag appended onto it, so for example if prefix was set to: + ; + ; dir_prefix=c:\mystic\files\fdn_ + ; + ; And the areatag was "nodelist", Mystic would create and the use path: + ; c:\mystic\files\fdn_nodelist\ + ; + ; And the datafile would be fdn_nodelist + + dir_prefix = d:\mystic\files\fdn_ + + ; Auto create base options + + dispfile = + template = ansiflst + acs_list = + acs_ftp = + acs_download = + acs_upload = + acs_hatch = + acs_sysop = s255 + + ; true/false type values 0=false 1=true (newscan 2=forced) + + free_files = 0 + show_uploader = 1 + new_scan = 1 + + ; Node-specific options allow some options to be overridden when a file is + ; coming from a specific node. These options should be prefixed with the + ; address, examples for each supported option are listed below in comments + + ;46:100/1_bad_dir = d:\mystic\files\badfile_agoranet\ + ;46:100/1_dir_prefix = d:\mystic\files\agora_ + ;46:100/1_allow_replace = true + ;46:100/1_acs_list = s20z2 + ;46:100/1_acs_ftp = s20z2 + ;46:100/1_acs_download = s20z2 + ;46:100/1_acs_upload = s20z2 + ;46:100/1_acs_hatch = s20z2 + ;46:100/1_acs_sysop = s255z2 + +[PackFileBases] + + ; If true, MUTIL will check to make sure files exist, and will update their + ; file size in the listing, optionally removing missing files (remove_missing) + + check_files = true + + ; If true, MUTIL will remove any files which do not exist from the file + ; list database while checking integrity. Otherwise they will be flagged as + ; OFFLINE in the file listing. 0 byte files are considered "missing" + + remove_missing = false + +[LinkMessages] + + ; This function has no options + +[PurgeUserBase] + + ; Mark users for deletion that haven't called in days. + ; This value cannot be less than 7 + + days = 180 + +[PackUserBase] + +[FileSort] + + ; Sort on which attribute (0=filename 1=size 2=date 3=downloads) + + attribute = 0 + + ; Sort direction 0=Ascending (A to Z, 1 to 10) 1=Descending (Z to A, 10 to 1) + + direction = 0 + +[AutoHatch] + + ; Files will be automatically hatched to connceted downlinks + ; Each file must already exist in the file base. The format + ; file= | filename | replaces filename (optional) + + file=nodelist | nodelist.z99 |nodelist.z99 + file=3 | nodelist.z98 + +[EchoNodeTracker] + + ; Automatically reset the echonode tracking statistics after a specific + ; number of days (or 0 to disable) + + reset_stats = 0 + + ; Set the number of days of inactivity before an Echomail Node is + ; automatically deactivated (or 0 to disable) + + inactivity = 0 + + ; When a node is deactivated, should they also be unlinked from all + ; subscribed message/file bases? + + unlink = false + + ; When set to TRUE, MUTIL will remove any files or mail packets from the + ; node's outbound queue upon deactivation from inactivity + + clear_outbound = false + + ; When Mystic is unable to connect outbound to a node it can automatically + ; change their mail type and filebox settings from "Crash" to "Hold" after + ; a specific number of outbound connection failures combined with a specific + ; number of days of outbound inactivity. Setting either to 0 will disable + ; this feature and both requirements must be met for action to be taken. + + crash_errors = 0 + crash_days = 0 diff --git a/nodespy.ini b/nodespy.ini new file mode 100644 index 0000000..f7f9b78 --- /dev/null +++ b/nodespy.ini @@ -0,0 +1,19 @@ +[General] + + ; If this is set the text will be included in the NodeSpy window title + ; id=My BBS + + ; If this is set to 1, NodeSpy will automatically start snooping when a user + ; logs in. + + autosnoop = 0 + + ; If you'd like to set an upload or download directory for the NodeSpy + ; terminal, you can do that here otherwise it will use the current + ; directory + + ;transfer_dir = c:\ + + ; Use auto zmodem downloads and detect automatically zmodem uploads + + auto_zmodem = true diff --git a/packuserbase.ini b/packuserbase.ini new file mode 100644 index 0000000..8583030 --- /dev/null +++ b/packuserbase.ini @@ -0,0 +1,112 @@ +; MUTIL configuration file +; ------------------------------------------------------------------------- +; +; MUTIL is an automated maintainance and utility program driven by +; configuration files used to perform various tasks upon execution. +; +; The syntax to execute MUTIL is: MUTIL . If no +; configuration file is supplied, then the program will look for mutil.ini +; in the same directory. A second parameter -NOSCREEN can be used to turn +; off screen updates but the configuration file parameter MUST be supplied +; ex: mutil mutil.ini -NOSCREEN +; +; Many different configuration files can exist to perform any series of +; tasks supported by MUTIL, or a single configuration can be maintained that +; does everything. The minimum requirement is the General header with a +; task enabled, and then the specific header for that task that defines its +; options. +; +; Current abilities (enabled/disabled in the General header below): +; +; - Export Binkley-style FLO echomail/netmail +; - Import Binkley-style FLO echomail/netmail +; - Import Message Bases (by datafile analysis) +; - Import FIDONET.NA into Message bases +; - Import FILEBONE.NA into File bases +; - Mass upload files to all file bases (with FILE_ID.DIZ import and the +; ability to exclude files by filemask) +; - Generate Top 1 up to 99 Callers, Posters, Downloaders, Uploaders, PCR +; Completely configurable output by using template files +; - Import FILES.BBS into file bases +; - Generate all files listing +; - Purge Message bases (by age and max messages) +; - Pack and renumber message bases +; - Post text files to message bases +; - Merge nodelists into Mystic format +; - Toss TIC+files into BBS and to subscribed downlinks +; - Pack and check integrity of file base listings +; - Sort file base listings +; - Perform message base echomail reply linking +; - Purge user database marking inactive users for deletion +; - Pack user database and remove private messages of deleted users +; +; The concept here is that you can create your own custom command lines to +; complete any number of tasks. For example, you could create msgmaint.ini +; which executes message base purge, packing, and reply linking. Then you +; can simply execute "mutil msgmaint" to kick it off. +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[General] + + ; list of functions to perform on startup + + PurgeUserBase = true + PackUserBase = true + + ; Set this value if you want to run mutil from a directory other than + ; the root Mystic directory or the mysticbbs environment variable: + + ; mystic_directory=c:\mystic\mystic.dat + + ; If no directory is specified in the logfile name, mUtil will attempt + ; to use the configured LOGS directory from in Mystic's configuration. + ; Comment out to disable logging completely. + + logfile=mutil.log + + ; If set to TRUE (*HIGHLY* recommended for MUTIL) then it will write the + ; log file in increments of 8KB at a time. If set to FALSE it will write + ; each individual line as it is logged. This will significantly reduce + ; MUTIL performance if set to FALSE. + + logcache=true + + ; Level 1 = basic + ; Level 2 = verbose + ; Level 3 = debug + + loglevel=3 + + ; logfile time stamp. defaults to NNN DD HH:II:SS if not set here + ;logstamp = YYYYHHMMHHIISS + + ; Log roller type: + ; 0 = Do not roll log files + ; 1 = Roll by number of files/filesize + ; 2 = Roll by number of days + + logtype = 2 + + ; number of log files to keep (0 to disable log rolling) + maxlogfiles = 31 + + ; size of each log file in kilobytes + maxlogsize = 1500 + +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[PurgeUserBase] + + ; Mark users for deletion that haven't called in days. + ; This value cannot be less than 7 + + days = 180 + +[PackUserBase] + + ; No options for this section + diff --git a/topcallers-colour.ini b/topcallers-colour.ini new file mode 100644 index 0000000..a8bd5aa --- /dev/null +++ b/topcallers-colour.ini @@ -0,0 +1,173 @@ +; MUTIL configuration file +; ------------------------------------------------------------------------- +; +; MUTIL is an automated maintainance and utility program driven by +; configuration files used to perform various tasks upon execution. +; +; The syntax to execute MUTIL is: MUTIL . If no +; configuration file is supplied, then the program will look for mutil.ini +; in the same directory. A second parameter -NOSCREEN can be used to turn +; off screen updates but the configuration file parameter MUST be supplied +; ex: mutil mutil.ini -NOSCREEN +; +; Many different configuration files can exist to perform any series of +; tasks supported by MUTIL, or a single configuration can be maintained that +; does everything. The minimum requirement is the General header with a +; task enabled, and then the specific header for that task that defines its +; options. +; +; Current abilities (enabled/disabled in the General header below): +; +; - Export Binkley-style FLO echomail/netmail +; - Import Binkley-style FLO echomail/netmail +; - Import Message Bases (by datafile analysis) +; - Import FIDONET.NA into Message bases +; - Import FILEBONE.NA into File bases +; - Mass upload files to all file bases (with FILE_ID.DIZ import and the +; ability to exclude files by filemask) +; - Generate Top 1 up to 99 Callers, Posters, Downloaders, Uploaders, PCR +; Completely configurable output by using template files +; - Import FILES.BBS into file bases +; - Generate all files listing +; - Purge Message bases (by age and max messages) +; - Pack and renumber message bases +; - Post text files to message bases +; - Merge nodelists into Mystic format +; - Toss TIC+files into BBS and to subscribed downlinks +; - Pack and check integrity of file base listings +; - Sort file base listings +; - Perform message base echomail reply linking +; - Purge user database marking inactive users for deletion +; - Pack user database and remove private messages of deleted users +; +; The concept here is that you can create your own custom command lines to +; complete any number of tasks. For example, you could create msgmaint.ini +; which executes message base purge, packing, and reply linking. Then you +; can simply execute "mutil msgmaint" to kick it off. +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[General] + + ; list of functions to perform on startup + + GenerateTopLists = true + + ; Set this value if you want to run mutil from a directory other than + ; the root Mystic directory or the mysticbbs environment variable: + + ; mystic_directory=c:\mystic\mystic.dat + + ; If no directory is specified in the logfile name, mUtil will attempt + ; to use the configured LOGS directory from in Mystic's configuration. + ; Comment out to disable logging completely. + + logfile=mutil.log + + ; If set to TRUE (*HIGHLY* recommended for MUTIL) then it will write the + ; log file in increments of 8KB at a time. If set to FALSE it will write + ; each individual line as it is logged. This will significantly reduce + ; MUTIL performance if set to FALSE. + + logcache=true + + ; Level 1 = basic + ; Level 2 = verbose + ; Level 3 = debug + + loglevel=3 + + ; logfile time stamp. defaults to NNN DD HH:II:SS if not set here + ;logstamp = YYYYHHMMHHIISS + + ; Log roller type: + ; 0 = Do not roll log files + ; 1 = Roll by number of files/filesize + ; 2 = Roll by number of days + + logtype = 2 + + ; number of log files to keep (0 to disable log rolling) + maxlogfiles = 31 + + ; size of each log file in kilobytes + maxlogsize = 1500 + +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[GenerateTopLists] + + ; Top list generator can generate up to top 99 for various different + ; statistics. Each individual top file can be enabled or disabled and + ; can each have their own template files that are totally configurable. + ; + ; 1=enable for top_call, top_post, etc. + ; + ; The number of items in each list is determined by the template. It + ; could be any number between 1 and 99. + ; + ; In the templates use @NA01-99 for name and @DA01-99 for numerical data + ; @DE returns the value set as _desc in the configuration. You can look + ; at the provided template as an example. + ; + ; namelen and datalen define the width the MCI code is padded to + ; + ; exclude list is one name per line text file listing names which should + ; not be included in the generated output. lines that begin with a ; + ; are considered comments. + + exclude_list = mutil.toplist.exclude.txt + + ; User name for "no one" when for example you have 3 users and make a + ; top 10 list + + no_user = No one + + ; Sort order. You can use this to calculate top or bottom 99. 1=top + + sort_top=1 + + ; configuration for top callers generator + ; @NA=name @DA=calls + + top_call = 1 + top_call_template = mutil.toplist-colour.txt + top_call_output = topcallers-colour.asc + top_call_desc = Callers + top_call_namelen = 30 + top_call_datalen = 10 + + ; configuration for top downloads + ; @NA=name @DA=downloads + + top_dl = 1 + top_dl_template = mutil.toplist-colour.txt + top_dl_output = topdownload-colour.asc + top_dl_desc = Downloaders + top_dl_namelen = 30 + top_dl_datalen = 10 + + top_ul = 1 + top_ul_template = mutil.toplist-colour.txt + top_ul_output = topupload-colour.asc + top_ul_desc = Uploaders + top_ul_namelen = 30 + top_ul_datalen = 10 + + top_post = 1 + top_post_template = mutil.toplist-colour.txt + top_post_output = topposts-colour.asc + top_post_desc = Posters + top_post_namelen = 30 + top_post_datalen = 10 + + top_pcr = 1 + top_pcr_template = mutil.toplist-colour.txt + top_pcr_output = toppcr-colour.asc + top_pcr_desc = Posts Per Call + top_pcr_namelen = 30 + top_pcr_datalen = 10 + diff --git a/topcallers.ini b/topcallers.ini new file mode 100644 index 0000000..c7e4e16 --- /dev/null +++ b/topcallers.ini @@ -0,0 +1,173 @@ +; MUTIL configuration file +; ------------------------------------------------------------------------- +; +; MUTIL is an automated maintainance and utility program driven by +; configuration files used to perform various tasks upon execution. +; +; The syntax to execute MUTIL is: MUTIL . If no +; configuration file is supplied, then the program will look for mutil.ini +; in the same directory. A second parameter -NOSCREEN can be used to turn +; off screen updates but the configuration file parameter MUST be supplied +; ex: mutil mutil.ini -NOSCREEN +; +; Many different configuration files can exist to perform any series of +; tasks supported by MUTIL, or a single configuration can be maintained that +; does everything. The minimum requirement is the General header with a +; task enabled, and then the specific header for that task that defines its +; options. +; +; Current abilities (enabled/disabled in the General header below): +; +; - Export Binkley-style FLO echomail/netmail +; - Import Binkley-style FLO echomail/netmail +; - Import Message Bases (by datafile analysis) +; - Import FIDONET.NA into Message bases +; - Import FILEBONE.NA into File bases +; - Mass upload files to all file bases (with FILE_ID.DIZ import and the +; ability to exclude files by filemask) +; - Generate Top 1 up to 99 Callers, Posters, Downloaders, Uploaders, PCR +; Completely configurable output by using template files +; - Import FILES.BBS into file bases +; - Generate all files listing +; - Purge Message bases (by age and max messages) +; - Pack and renumber message bases +; - Post text files to message bases +; - Merge nodelists into Mystic format +; - Toss TIC+files into BBS and to subscribed downlinks +; - Pack and check integrity of file base listings +; - Sort file base listings +; - Perform message base echomail reply linking +; - Purge user database marking inactive users for deletion +; - Pack user database and remove private messages of deleted users +; +; The concept here is that you can create your own custom command lines to +; complete any number of tasks. For example, you could create msgmaint.ini +; which executes message base purge, packing, and reply linking. Then you +; can simply execute "mutil msgmaint" to kick it off. +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[General] + + ; list of functions to perform on startup + + GenerateTopLists = true + + ; Set this value if you want to run mutil from a directory other than + ; the root Mystic directory or the mysticbbs environment variable: + + ; mystic_directory=c:\mystic\mystic.dat + + ; If no directory is specified in the logfile name, mUtil will attempt + ; to use the configured LOGS directory from in Mystic's configuration. + ; Comment out to disable logging completely. + + logfile=mutil.log + + ; If set to TRUE (*HIGHLY* recommended for MUTIL) then it will write the + ; log file in increments of 8KB at a time. If set to FALSE it will write + ; each individual line as it is logged. This will significantly reduce + ; MUTIL performance if set to FALSE. + + logcache=true + + ; Level 1 = basic + ; Level 2 = verbose + ; Level 3 = debug + + loglevel=3 + + ; logfile time stamp. defaults to NNN DD HH:II:SS if not set here + ;logstamp = YYYYHHMMHHIISS + + ; Log roller type: + ; 0 = Do not roll log files + ; 1 = Roll by number of files/filesize + ; 2 = Roll by number of days + + logtype = 2 + + ; number of log files to keep (0 to disable log rolling) + maxlogfiles = 31 + + ; size of each log file in kilobytes + maxlogsize = 1500 + +; ========================================================================== +; ========================================================================== +; ========================================================================== + +[GenerateTopLists] + + ; Top list generator can generate up to top 99 for various different + ; statistics. Each individual top file can be enabled or disabled and + ; can each have their own template files that are totally configurable. + ; + ; 1=enable for top_call, top_post, etc. + ; + ; The number of items in each list is determined by the template. It + ; could be any number between 1 and 99. + ; + ; In the templates use @NA01-99 for name and @DA01-99 for numerical data + ; @DE returns the value set as _desc in the configuration. You can look + ; at the provided template as an example. + ; + ; namelen and datalen define the width the MCI code is padded to + ; + ; exclude list is one name per line text file listing names which should + ; not be included in the generated output. lines that begin with a ; + ; are considered comments. + + exclude_list = mutil.toplist.exclude.txt + + ; User name for "no one" when for example you have 3 users and make a + ; top 10 list + + no_user = No one + + ; Sort order. You can use this to calculate top or bottom 99. 1=top + + sort_top=1 + + ; configuration for top callers generator + ; @NA=name @DA=calls + + top_call = 1 + top_call_template = mutil.toplist.txt + top_call_output = topcallers.asc + top_call_desc = Callers + top_call_namelen = 30 + top_call_datalen = 10 + + ; configuration for top downloads + ; @NA=name @DA=downloads + + top_dl = 1 + top_dl_template = mutil.toplist.txt + top_dl_output = topdownload.asc + top_dl_desc = Downloaders + top_dl_namelen = 30 + top_dl_datalen = 10 + + top_ul = 1 + top_ul_template = mutil.toplist.txt + top_ul_output = topupload.asc + top_ul_desc = Uploaders + top_ul_namelen = 30 + top_ul_datalen = 10 + + top_post = 1 + top_post_template = mutil.toplist.txt + top_post_output = topposts.asc + top_post_desc = Posters + top_post_namelen = 30 + top_post_datalen = 10 + + top_pcr = 1 + top_pcr_template = mutil.toplist.txt + top_pcr_output = toppcr.asc + top_pcr_desc = Posts Per Call + top_pcr_namelen = 30 + top_pcr_datalen = 10 +