home *** CD-ROM | disk | FTP | other *** search
-
- ╔══════════════════════════════════════════════════╗
- ║▒▒▒▒▒▒ ScanMail v2.7c - SysOp Documentation ▒▒▒▒▒▒║
- ╚══════════════════════════════════════════════════╝
-
- ScanMail is just what it says. It is a mail scanning program for
- Opus Version 1.70. It is nothing flash and contains no redundant
- install code, it just gets the job done.
-
- This file contains details on the set-up and use of ScanMail. If you
- encounter any problems, you can contact the Author via NetMail at...
-
- Mick Howland
- The Perth OMEN
- FidoNet 3:690/660
-
- Or myself
-
- Jonathan Cousins
- The Engineer's Pitstop
- FidoNet 3:690/652
-
- If you do get any error messages, please tell us about them as well
- as the commands leading up-to the error.
-
-
- ╔════════════════════════════╗
- ║▒▒▒▒▒▒ 1. Legal Stuff ▒▒▒▒▒▒║
- ╚════════════════════════════╝
-
- ScanMail is and shall remain the property of Mick Howland of
- The Perth Omen. You are granted to use and distribute this
- archive as long as the all files within the archive remain
- intact and un-modified.
-
- Many hours of work have been put into the writing of this program
- and it has been tested on several systems. I can not guarantee that
- ScanMail will work with all configurations, only that it works on
- the configurations it was tested on.
-
- The author will not be held liable for any damage this program may
- do to your system. You are using it entirely at your own risk.
- Remember, if it breaks, you get to keep all the pieces!
-
-
- ╔═══════════════════════════════════╗
- ║▒▒▒▒▒▒ 2. Configuration File ▒▒▒▒▒▒║
- ╚═══════════════════════════════════╝
-
- ╔═══════════════════════════════════════════════════════════════════╗
- ║ Anyone converting from a version of ScanMail prior to 2.7 must ║
- ║ re-do the config files. This is due to the change in the parameter║
- ║ names to reflect Opus 1.70 as being the official release version ║
- ║ instead of 1.20. ║
- ╚═══════════════════════════════════════════════════════════════════╝
-
- There are 11 parameters in the configuration file (SM.CFG).
- Most of them are self explanatory.
-
-
- 1) Define the location and file name for the User file
-
- Opus170UserFile C:\Opus\User.Dat
-
-
- 2) Define the location and file name for the Message Area database
-
- Opus170AreaFile C:\Opus\Sysmsg.Dat
-
-
- 3) Define the location and file name for the Mail file created by
- ScanMail. This file contains a complete list of the messages
- for users on the BBS.
-
- MailWaitingFile C:\Opus\Misc\MailWait.Dat
-
-
- 4) Define the location and file name for the LastUser file
-
- Opus170Lastuser C:\Opus\Status\Lastus01.Dat
-
-
- 5) Define the location and file name for the file telling the user
- about any waiting mail along with all area and message details.
-
- MailWaitingOutFile C:\Opus\Misc\MailOut.Bbs
-
-
- 6) Define the location and file name for the file to be displayed
- after the mail waiting file is shown. This line can be commented
- out if you wish.
-
- ChainToFile C:\Opus\Misc\Bulletin.Bbs
-
-
- 7) Define the location and file name for the file to be displayed
- if there is no mail for the user. This option may be commented
- out if you do not want to display anything special to the user.
-
- NoMailWaitingFile C:\Opus\Misc\NoMail.Bbs
-
- 8) Define the location and file name for the flag file. This is for
- multi-line systems to avoid two copies of smc trying to write to
- the same file.
-
- FlagFiles C:\Opus\Status\
-
- 9) Which area(s) to exclude from a compile/update phase. This is
- especially useful if you have 2 logical areas pointing to the
- same phisical area. E.g. Logoff messages and your replies.
- If you do not want to exclude any areas and are using the INCLUDEAREAS
- option the you may comment this out, however if you don't want
- to use any of these include/exclude options, then leave this
- line uncommented but with no area numbers.
-
- ExcludeAreas 0 9 4321 31932 28
-
- 10) Which area(s) to use during a compile/update phase. This is
- especially usefull if you have a lot of areas that you do
- NOT want to be scanned but would take lines and lines (plus heaps
- of typing) to enter. Oposite to the ExcludeAreas option.
-
- IncludeAreas 1 2 3 4 5 6 7 8 9 12 93
-
- 11) Define the display colours.
-
- ScanMail v2.7b.Opus 1.70
- ┌─────┘ │
- │ ┌────────────┘
- │ │ ┌───────────────────────────────────────────────────────┐
- │ │ Jonathan, you have mail waiting for you in the following area(s)│
- │ │ │ │ │ ┌────────────────────┬────┬──────────┘
- │ │ │ │ │ Area 6, Netmail │ │
- │ │ │ │ └──┐ │ ┌────┘ │ Msg(s) 25, 34, 123
- │ │ │ └┐ │ │ │ ┌────┘ │ │ │ │
- │ │ └────┐ │ │ ┌─┘ │ │ ┌────┘ │ │ │
- │ └──┐ │ │ │ │ │ │ │ ┌────────────┴────┴───┘
- │ │ │ │ │ │ │ │ │ │
-
- Colour 12 11 12 14 2 13 9 79 10 7
-
- This is a list of the legal colour codes you can use for the
- "Colour" statement. If you want to change background colours,
- select the background colour you want (legal range is 0(Black)
- to 7(Gray)) and multiply it by 16 and then add the foreground
- colour (legal range is 0(Black) to 15(white)). If you want the
- particular item to flash then simply add 128 to you colour.
-
- For example: Using the default Colour statement above, I have
- the name of the area in white with a red background, this works
- out like this... 15(white) + ( 4(red) * 16 ) = 79
-
- Black = 0 Blue = 1 Green = 2
- Cyan = 3 Red = 4 Magenta = 5
- Brown = 6 Gray = 7 DarkGray = 8
- LightBlue = 9 LightGreen = 10 LightCyan = 11
- LightRed = 12 LightMagenta = 13 Yellow = 14
- White = 15
-
-
- Note:
-
- ScanMail will create a flag-file during the compilation or update
- stage. When SMC/SMD is executed, it will first check for the
- presence of this file before proceeding. This is a for multi-line
- systems to avoid two copies of smc trying to write to the same file
- which could cause some strange if not major problems.
-
-
- ╔═════════════════════════════════════════════════════════╗
- ║▒▒▒▒▒▒ 3. Compiling and Updating the Mail Database ▒▒▒▒▒▒║
- ╚═════════════════════════════════════════════════════════╝
-
- Before ScanMail can be used for the first time, it must compile a
- listing of mail waiting for the users.
-
- This compilation should also be done after any re-numbering of the
- message base. An update should be performed after users log off
- and after the reciept of inbound mail.
-
- The syntax for the compile/update program are as follows.
-
- SMC <-C> <-U> <-Afilename.ext>
- Compile Update Alternative config file
-
-
- *** Note ***
-
- No spaces are allowed between
- the -a and the filename.
-
- Typing SMC by itself will display the available parameters
-
-
- ╔═════════════════════════╗
- ║▒▒▒▒▒▒ 3.1 Compile ▒▒▒▒▒▒║
- ╚═════════════════════════╝
-
- The compile procedure will read in the area and user database
- files. It will then scan through all defined message areas and
- create its own database of users with mail waiting.
-
- Priviledge levels are honoured so that users will not be shown
- mail waiting in areas that they can not access. It is up to you
- to ensure the users have access to areas that messages for them
- may be entered into.
-
-
- ╔════════════════════════╗
- ║▒▒▒▒▒▒ 3.2 Update ▒▒▒▒▒▒║
- ╚════════════════════════╝
-
- After a user has logged off, or extra mail is added (without
- renumbering the message base), you may update the ScanMail data.
- To do this, just use the -U parameter.
-
- The update procedure will read in the lastuser file (as stipulated
- in the configuration), the old ScanMail data file, Opus user and
- sysmsg data files, then check with the high-water marks for all the
- message areas. Any new messages to users will be added to and any
- deleted mail will be removed from the ScanMail database.
-
-
- ╔═════════════════════════╗
- ║▒▒▒▒▒▒ 3.3 Display ▒▒▒▒▒▒║
- ╚═════════════════════════╝
-
- SMD has two command line options. Using SMD by itself will generate
- the MailWaiting file to show to the user who is currently online.
- Typing SMD with a users name will show any mail waiting for that
- user on your screen.
-
- For example.
-
- SMD <enter> will generate a file for the user.
-
- SMD Mick Howland <enter> shows any mail waiting locally
-
- SMD Mick Howland -ac:\opus\sm.cfg <enter> same as above but tells
- ^ SMD where to find an
- | alternative config file.
- |
- | Note - No space between the -a and the filename.
-
-
- ╔══════════════════════════════════════╗
- ║▒▒▒▒▒▒ 4. Sample Implementation ▒▒▒▒▒▒║
- ╚══════════════════════════════════════╝
-
- Now for the really useful bit. You now know how to compile the data
- and how to generate the display file. Next to give an example.
-
- a) Copy the files into your OPUS directory.
-
- b) Place the command "SMC -C" in your midnight event batch file
- after the message renumbering.
-
- c) Insert "SMC -U" in the batch files just after a user logs off
- and after incoming mail processing.
-
- d) Add some lines to display the message to the user.
- For example, at the end of my Welcome.OEC file, I have the
- following lines....
-
- [DOS]c:\opus\smd
- [ENTER][CLS][CALLFILE]c:\opus\misc\mailout.bbs
- [DISPLAY]c:\opus\misc\bulletin.bbs
-
- * Callfile compiles to ^OA - customised
- * If you use OACOMP, add "CALLFILE ^OC" to your OACOMP.TOK file
-
- I have also added an option into the Message Menus...
-
- _SHOW Twit "Where are mine?" = c:\opus\mailout
-
- Important - If you use this function, any chain file that you
- entered in the config file will also be shown.
-
-
- ╔════════════════════════════════════╗
- ║▒▒▒▒▒▒ 5. Future Enhancements ▒▒▒▒▒▒║
- ╚════════════════════════════════════╝
-
- a) Make the message compile function KEY aware. Any need for it?
- b) Speed up compile and display phases. Ummmmm???????? yeah, right.
-
-
- ╔═════════════════════════════════╗
- ║▒▒▒▒▒▒ 6. Revision History ▒▒▒▒▒▒║
- ╚═════════════════════════════════╝
-
- If a lot of this seems like gobbly-gook, don't worry, it's just a
- product of my warped logic, and it makes sense to me!
-
- SMC.EXE
-
- 1.0 06/06/91 - Initial release to Jon (guinea pig). Only compiled database,
- limited usernames capability.
- 1.1 15/06/91 - Usernames now allocated dynamically on heap. Added command
- line functions and help if none. Added highwater recording
- for the update phase. Also added a pointer to the next
- record in the datafile.
- 1.2 18/06/91 - Changed database format, removed $ffff terminator word in
- output file. Not needed now because of record pointers.
- 1.3 19/06/91 - Started adding the update phase. What a prick of a job!
- 1.4 24/06/91 - Reverted back to highwater marks from v1.1.
- 2.4 25/06/91 - Version number changed to make it obvious that this is a
- complete rewrite from the version 1.x program release.
- 29/06/91 - Finally got the %$@#$*( sorts to work!
- 30/06/91 - First offical Opus 1.70 release.
- 2.5 01/07/91 - Added a new error handler routine. Now loggs errors to a
- disk file. It should now read the sysmsg file correctly as
- there were errors in the released Opus structures. This
- caused me a few headaches!
- 2.6 07/07/91 - Added a config option to specify where the flag files are
- to be created/found as we just went multiline and it soon
- became apparent that the original idea was full of bugs.
- The alternative config file option _NOW_ works, what a
- stupid mistake!
- 2.6a 13/07/91 - First official public release.
- 2.7 14/07/91 - Added an exclude area function. Thanks to Andrew Newbury
- (3:634/385@fidonet) for this suggestion.
- 2.7a 14/07/91 - Fixed command line parser, for good this time i hope.
- 2.7b 02/08/91 - Added a new config option that tells ScanMail to only look
- at areas wanted. Oposite to the ExcludeAreas option. Thanks
- to Dan Dimick (1:105/7@fidonet) for this suggestion.
- Should also fix problems encountered with screen bleed
- through under DesqView (I hope? It did here!).
- 2.7c 03/08/91 - Fixed a very small mite that i introduced while adding the
- includeareas option <red face>.
-
- SMD.EXE
-
- 1.0 06/06/91 - Initial release to Jon (guinea pig).
- 1.1 15/06/91 - Now skips highwater mark header information.
- 1.2 18/06/91 - OEC colour codes now conform to Opus specs ^V^A^P Highbit
- set on colour value. Copy of the nomailwaiting file is now
- done with a blockread, as a text file readln() could bomb
- on a ^Z in the nomailwaiting file.
- 2.2 25/06/91 - Version number changed to make it obvious that this is a
- complete rewrite from the version 1.x program release.
- 2.3 ??/??/?? - Ummmm, obviously i can't count. Don't know how i missed 2.3?
- 2.4 30/06/91 - Official Opus 1.70 release. Did some change to this version
- but forgot to mention it here, maybe i should go to bed at
- a decent hour like normal people!
- 2.5 01/07/91 - Added a new error handler routine. Now loggs errors to a
- disk file. Added colour config code. It should now read the
- sysmsg file correctly as there were errors in the released
- Opus structures. This caused me a few headaches!
- 2.6 07/07/91 - Added a config option to specify where the flag files are
- to be created/found as we just went multiline and it soon
- became apparent that the original idea was full of bugs.
- The alternative config file option _NOW_ works, what a
- stupid mistake!
- 2.6a 13/07/91 - First official public release.
- 2.7 14/07/91 - Added local display option. Thanks to Andrew Newbury
- (3:634/385@fidonet) for this suggestion.
- 2.7a 16/07/91 - Fixed problem in that if SMC was running on one node and
- SMD was run on a different node, SMD would abort and Opus
- would show the user online, the mailwaiting file from the
- last logon. SMD now writes out the nomailwaiting file which
- should fix this. Fixed a small bug in the file copy routine.
- 19/07/91 - Small mod to command line parser. Should now ignore any
- spaces between -a and alternative config path/filename.
- 2.7b 02/08/91 - Found and fixed another problem with the command line
- parser. Who invented bloody command line options anyway!
- Should also fix screen bleed problems encountered while
- using DesqView (I hope? It did here!). Also enabled more
- prompts in the output display file as suggested by
- Dan Dimick (1:105/7@fidonet).
-
-
- ╔════════════════════════╗
- ║▒▒▒▒▒▒ 7. Credits ▒▒▒▒▒▒║
- ╚════════════════════════╝
-
- I would like to say thanks to the Opus LCDs for the many many hours
- of unpaid work they have put into Opus to make it the worlds best.
-
- Many thanks to all who beta tested this very buggy program, especially
- Dan Dimick who really helped me along with his quick replies.
-
- No thanks to Jonathan Cousins for giving me a lot of headaches
- because of his insistant nagging for me to write this <grin>.
-
-
- Programme by Mick Howland, Documentation by Jonathan Cousins & Mick Howland.
- Compiled 4th August 1991
-
-