------------------------------------------------ PlutRieve A TrapToss Bad Message Rescue Utility Version 2.1 (c) 18-Mar-95 by Peter Deane (3:622/401) in GFA-BASIC v3.51 ------------------------------------------------ Introduction ============ PlutRieve is a program to automatically scan messages in your BadMail directory, and retrieve them into your ordinary message bases. This version of PlutRieve has been entirely re-written to make this process AUTOMATIC. One drawback has been that old PlutRieves were generic FTS-1 utilities - this all-new PlutRieve 2 now requires a TrapToss config file before it will run. If you aren't running TrapToss and still want to use PlutRieve, look for a version of 1.8 or less (or, make up a TrapToss message config file for your areas - not difficult, in fact). I'll keep an old PlutRieve online at my BBS for download or freq if this gets difficult to find, the archive name is PLTRIV18.lha. Messages get into the BADMAIL area for a variety of reasons, and a lot of them ARE bad messages - you wouldn't want them in distribution. But I find that the majority of messages that go into BAD do so for two main reasons: (a) it's a new area and you haven't set it up in your config or (b) the system sending you the messages isn't configured in the export-to line, due to an error, or a changing node number. It's for these two problems that PlutRieve comes to the rescue. Previously these messages would be very difficult to rescue, involving a lot of manual work copying messages about and possibly editing the messages at the binary level. Also, any messages saved this way would have an untidy "AREA:" line at the head of the text when sent to other systems. PlutRieve will be a very useful program to use in conjunction with TrapToss - once you've used it I guarantee satisfaction! If you have bad messages from areas that are not configured, then you should set those areas up in your TrapToss config file (ie entering the AREA line with Tagname, Directory and export-to node numbers). That's all you need do (save running PlutRieve). You DO NOT need to create these directories, PlutRieve will do that for you automatically if it finds messages that have to go into them. Note: please remember to also set these areas up in your message editor's config file as well. PlutRieve makes it so easy to setup new areas that it's easy to forget your editor, I can assure you! If you have bad messages coming from a system not in the export-to list, PlutRieve will simply rescue them without you having to do anything - although you SHOULD check your config to make sure it's not you that has the error, intead of the other end! A Word of Warning ================= PlutRieve will retrieve ALL messages you specify if it can find a directory for them to be sent to. No duplicate or security checking is performed on rescued messages - please be aware of this. What I recommend is that BEFORE you run PlutRieve, you go through your BadMail area with your message reader and DELETE any genuinely bad messages. Ones that are truncated, malformed or ones you know you won't want to rescue, etc, etc. That will save having to make two or more passes over the area specifying different start and finish numbers. If you are getting TrapToss to move duplicate messages to your BadMail area, then it makes things very difficult - nay impossible - for PlutRieve to tell the difference. Versions of TrapToss from 1.63 and above use the text "DUPE: TAGNAME" rather than "AREA: TAGNAME", so this won't be a long-term problem after a new version of TrapToss is publicly released. However in the meantime (while TrapToss 1.50 is the public release), I suggest you choose to get TrapToss to delete duplicate messages. Alternatively you COULD go through the BadMail area and delete the messages which are duplicates, but this might just be a little tedious! Note about future TrapToss versions =================================== In TrapToss 1.50, all bad messages echomail which have a tagname commence with the text "AREA:" and have the tagname of the area immediately behind the "AREA:" line. In the next public release of TrapToss - WHICH IS NOT CURRENTLY AVAILABLE PUBLICLY, DON'T ANNOY THE DEVELOPERS AND ASK THEM FOR IT - there are three types of leading line on bad messages. Firstly any message with an un-configured tagname gets the old AREA: line. Any message which is a duplicate gets a DUPE: line, and any message sent by a system not configured in the export-to list (but in a known area) gets an ILLG: line (short for illegal). Plutreive 2.1 and above knows about all three types of tagname markers, and will ask whether you want to retrieve each type. (EG you can retrieve AREA: and ILLG: messages and leave behind the DUPE:s if you like, or any other combination). If you're only using TrapToss 1.50 at the moment, then when PlutRieve asks you if you want to retrieve messages with ILLG: or DUPE: lines, well, you won't have any, so it doesn't matter which way you answer the questions. Operation ========= On running PlutRieve it will ask you for the name of a file to log its actions to. This file will assist if you're plutrieving a lot of bad messages and want to keep track of what goes on. It defaults to "LOG:PlutRieve.log", but if you wish to change that (or any of the text PlutRieve needs from you) you may edit the line with backspace and delete keys, or clear the line by pressing Escape. The left and right arrow keys also enable you to move in the text as well as shift-left and shift-right. If you want to use the default, just hit return and send the text that's displayed. Next PlutRieve will ask the name of your TrapToss config file, defaulting to "MAIL:Fido.cfg". Again you can change this. The Fido.cfg will be parsed looking for AREA lines, to extract the tagname of an area, and the name of the directory you're using for it. The parser is a little picky in that it doesn't understand TAB characters in the config, only spaces. If you've used TAB characters in your config, you should expand them to spaces before PlutRieve will be able to read it correctly. This can often be done automatically through many utilities and editors. Reading the Fido.cfg takes a short moment as PlutRieve builds a table of tagnames and directory names from it. Pass-through areas are treated no differently to local bases, so if you are using pass-through areas, please ensure that the dummy name you are using as the directory IS a valid device, just in case a bad message for that area is found. I hasten to add that bad messages in pass-through areas really shouldn't find their way into the BadMail directory in any case. PlutRieve then asks for the name of the directory to retrieve from, which you will usually want to be your BADMail area. Your Badmail area as given in your TrapToss config is taken as the default for this question, however you have the opportunity of selecting a different area if you like. It will then scan the area to determine the high and low message numbers and report back. We now need to know the start and finish numbers of the messages you want to plutrieve. The defaults here are the lowater and hiwater marks of the BadMail area (ie ALL messages therein), but naturally you can change them. If you specify start or finish numbers beyond the bounds of the BadMail area, PlutRieve will adjust these numbers to match the lowater or hiwater marks. The program then asks some very important questions. They have Yes or No anwers - and most default to Yes. This means that if you DON'T want to use the option, you must enter "N" (or "No" or anything else as long as the first character is "N" - not case sensitive). To give a Yes answer, ANY other input (including just pressing Return) will suffice. "Clear Sent Bits?": If you want to later export the retrieved messages without having to use the IGNORESENT option of TrapToss, then select this option. If you are only importing to the local bases and not passing them on to other systems, then it would probably be safer to not do this. "Set Local Bits?": Use this if you want the retrieved messages to have their LOCAL bit set (ie written here). This means they can be packeted to other systems using the SCAN option of TrapToss rather than the EXPORT function. Again, if there are no other systems downstream, you'd probably be best not using this option. If you answer YES to both these questions, then TrapToss will think the messages have been written locally and will be sent to any downlinks using your USUAL TrapToss export command(s). You will almost certainly want to do this if you are going to pass these messages on to other systems, because it saves having to perform a "special" command to export them. A normal 'TrapToss Scan' will do the trick. The next question is pretty straightforward: "Delete Original Messages?". I find it preferable to get rid of them, you mightn't. The advantage of removing the old ones (apart from drive space considerations) is that next time you run PlutRieve, your operations won't have to make any allowance for messages you've ALREADY retrieved. Plutrieve then asks if you want to retrieve messages with AREA: lines, ILLG: lines and DUPE: lines, in turn. Note that the default answer for retrieving duplicates is NO, it's the only question having a NO default answer at the moment. If you're using TrapToss 1.50, then the only tag marker used in bad messages is "AREA:", so the answer you give to the ILLG: and DUPE: questions is not important. It WILL matter when you start using the new TrapToss above V1.83, expected pretty soon, in fact. PlutRieve will then print up a summary of what it's going to do, and ask you if you want to continue. It's not possible to abort PlutRieve during its operations (at the moment, anyway), so make sure you've got it all right. Hit Return (or enter "Y") and it's on it's way. Sit back and watch - you'll love it! How it works ============ For each bad message, PlutRieve opens up the message and looks for an AREA:/ILLG:/DUPE: line in it. If it CAN find one (all echomail messages that TrapToss puts into BAD will have one), then it reads in the tagname for that message. It then scans its table of areas you have configured in your TrapToss config looking for a match. If it finds one, then it knows the directory name that the message is destined for. If this directory does not exist (eg you've only just added the message area to your config) PlutRieve will create it. It then scans this directory to find the hiwater mark. Once we know the destination directory and hiwater mark, PlutRieve moves the bad message over into the new directory, calculating the correct message number. On its trip over, the AREA:/ILLG:/DUPE: line is removed so nobody can tell that it's been in the BadMail area in the first place. If you've chosen to delete the original messages, then once a message has been moved, the one in BAD is deleted. If the message hasn't got an AREA:/ILLG:/DUPE: line, the tagname of the message doesn't match one in your TrapToss config file, or you've told PlutRieve not to retrieve messages of that particular type, PlutRieve simply leaves the message as-is and moves on to the next. PlutRieve also makes a copy of the runtime screen output to the file you told PlutRieve to log actions to at the start of the run. Use this file if you wish to double-check which messages have been saved off to what directory. Well, that's just about it. If you have any more questions, feel free to contact me. If you can get the Fido TRAPDOOR echo, you'll find I'm a frequent visitor there. Otherwise Netmail me, or write to me at any of the below addresses. Distribution and Politics ========================= The PlutRieve archive currently consists of these files: PlutRieve Executable PlutRieve.doc This file PlutRieve.lst GFABASIC Source (ascii) It may NEVER be distributed without all the above files being present in the distribution copy. No charge over and above a small copying fee may ever be levied on the distribution of the program. All copyrights are retained by the author. If you use any part of the source in other programs, acknowledgement must be given. The liability of the author for any damages caused by this program is limited to the amount the user has paid directly to the author for the right to use the software (ie nil). Claims for amounts greater than this will be refused. The author can be contacted: Peter Deane FidoNet: 3:622/401 Postal: PO Box 228 GlobalNet: 54:6101/401 Swansea NSW 2281 AmigaNet: 41:220/401 AUSTRALIA BBS: from O/S +61-49-72-1647 (24hrs) from Aust (049) 72-1647 For 1995, you can use my email address c8345041@cc.newcastle.edu.au if you like. However, I get Fido mail a lot more quickly and will answer it more quickly too. ------------------------------------------------