═══ 1. FleetStreet ═══ Welcome to FleetStreet 0.89wb FleetStreet is a FTS compatible message editor for OS/2 2.x PM. FleetStreet can handle *.MSG and Squish type message areas. Topics: ■ Design goals of FleetStreet ■ Limitations (yes, there are some) ■ Installation and configuration ■ Using FleetStreet ■ Registering FleetStreet ■ Future enhancements ═══ 1.1. Design goals ═══ We had several design issues in mind while developing FleetStreet. Maybe you want to read about some of them. Why a PM editor? The Presentation Manager (tm) interface may be slower than the VIO interfae (but only when you use VIO in full screen). On the other hand, PM provides many advantages to the user. The clipboard is now fully usable (VIO clipboard is a kludge!), the user can select fonts and colors easily and isn't bound to a 80x25 (or similar) screen format. PM also gives us the ability to implement all the dialog boxes that make FleetStreet so easy to use. Integrated setup With other editors you may have struggled with a lot of ASCII configuration files with as many different keywords. If you are used to the various notebook settings dialogs of the workplace shell, you will not have difficulties setting up FleetStreet. You can change settings while FleetStreet is running and don't have to restart your editor to make the changes take effect. If you are in doubt about one setting, just press F1 or the HELP buttons around. There's no need to read a lengthy ASCII documentation. Support for Squish (tm) FleetStreet supports Squish in two ways: At first, it uses the squish API implemented in MSGAPI32.DLL. Secondly, FleetStreet can read your Squish.Cfg configuration file. Ease of use Most PM applications are easy to use, but we've added to that. Generally speaking, if you've used the WPS you will know how to use FleetStreet. We have settings notebooks, popup menus, containers etc. All the features you ever need We've implemented a lot of features that we found to be useful in other editors, and some that we didn't find elsewhere. Power FleetStreet makes use of multiple threads, CUA'91 and 32 Bit processing. ═══ 1.2. Limitations ═══ There are some limitations of FleetStreet. Some of them are imposed by the Squish API, some by OS/2 and some by FleetStreet itself. We'd like to inform you about these. Edit window At the moment we use the MLE control of OS/2 for writing and changing messages. The MLE control doesn't handle all the fonts and colors that are available with OS/2. In particular, it can only use bitmapped fonts (ie. Helv, Courier, Tms Rmn, System font) and only non-mixed colors. When reading messages we use our own message viewer control. This new control doesn't have such limitations. You can use mixed colors and any font when reading. Squish API The squish API doesn't allow for messages that are longer than 16 KB. There is a maximum of 5200 messages per message area. There is no "direct" message attribute. Therefore when writing a new message the text is split into pieces of 12 KB using the SPLIT kludge. When changing a message the new message length is limited to 15 KB. Setup You may have a maximum of 50 user names and 50 network addresses. ═══ 1.3. Installing FleetStreet ═══ If you've started FleetStreet for the first time you have to configure the program. There are two things you have to look after: 1. Setting up general options, 2. Setting up message areas. If you like to change the outer appearance of FleetStreet you may change colors and fonts as well. ═══ 1.3.1. Setting up general options ═══ FleetStreet needs to know some settings to operate properly. To enter these settings select "Setup Options" from the menu bar. The settings will be saved when you exit FleetStreet or when the system is shut down. ═══ 1.3.2. Setting up message areas ═══ There are two ways to add message areas to the area list: 1. Reading areas from the squish configuration file. Open the "Setup Options" dialog, go to the "Squish" page, activate "read SQUISH.CFG" and fill in the path and name of the configuration file. The area definition will be read and these areas will appear in the area list. 2. Adding private areas to the area list. Open the area list, press the minor mouse button (usually this is the right button), and select "Create another" from the popup menu. Fill in the fields of the settings notebook and close the dialog. To change settings for message areas, do the following: 1. Open the area list 2. Click on the area which settings you like to change, use the right mouse button for this 3. Select "Settings" from the popup menu 4. Change the area settings in the settings notebook 5. Close the dialog To edit the description of an area, do the following: 1. Open the area list 2. Hold down the ALT key and click on the apropriate area using the left mouse button. 3. Edit the description 4. To save changes click on another area using the left mouse button To delete a private area, do the following: 1. Open the area list 2. Click on the area you want to delete using the rigt mouse button 3. Select "Delete" from the popup menu. Areas that were read from the squish configuration file can not be deleted, but they may be hidden from the area list. ═══ 1.3.3. Changing colors and fonts ═══ You won't find any menu item or dialog for changing colors or fonts of the main window of FleetStreet. This is because FleetStreet uses Workplace Shell objects to costumize its appearance. The color palette Open a color palette, drag a color to FleetStreet and drop it on the appropriate element in the window. To change the color of textual elements hold down the CTRL key while dropping. If you don't hold down CTRL the background color of the element will be changed. The color of the following elements will be saved: ■ message window (foreground and background) ■ window background (drop color above the speed buttons) ■ area title (foreground and background) ■ message numbers (foreground and background) ■ message dates (foreground and background) ■ message header (foreground and background) ■ menu bar (foreground and background) ■ status line (foreground and background) ■ status line border (hard to hit) ■ clock (foreground and background) ■ area list (foreground and background) ■ message list (foreground and background) ■ message thread list (foreground and background) ■ address indicator (foreground and background) The font palette Open a font palette, drag a font to FleetStreet and drop it on the appropriate element in the window. The font of the following elements will be saved: ■ message window ■ area title ■ message numbers ■ message dates ■ message header ■ menu bar ■ status line ■ clock ■ area list ■ message list ■ message thread list ■ "Change" button ■ address indicator ═══ 1.4. Using FleetStreet ═══ Select one of the following topics: ■ Entering Fidonet addresses ■ Writing messages ■ Changing messages ■ Crossposting messages ■ Using carbon copy lists ■ Using the message list ■ Using the thread list ■ Using message templates ■ Finding messages ■ Using nodelists ■ Drag and Drop in FleetStreet ■ Advanced topics ═══ 1.4.1. Entering Fidonet addresses ═══ When writing messages you must specify the network address of the addressee. This is usually done by entering the full 3-D or 4-D address. However, FleetStreet can assist you by completing uncomplete addresses. If you enter an uncomplete address, the missing components are automatically added using your own address as the default. The following examples illustrate the process. The default address 2:2490/2520.17 is assumed: ┌────────────┬───────────────┬──────────────────────────────┐ │Entered │Resulting │Comment │ │address │address │ │ ├────────────┼───────────────┼──────────────────────────────┤ │2:2490/2520 │2:2400/2520 │3-D address specified │ ├────────────┼───────────────┼──────────────────────────────┤ │2520 │2:2490/2520 │Node specified, same net & │ │ │ │zone │ ├────────────┼───────────────┼──────────────────────────────┤ │247/2099 │2:247/2099 │Net & Node specified, same │ │ │ │zone │ ├────────────┼───────────────┼──────────────────────────────┤ │1030.42 │2:2490/1030.42 │Node & point specified, same │ │ │ │zone & net │ ├────────────┼───────────────┼──────────────────────────────┤ │.42 │2:2490/2520.42 │Point specified, same boss │ └────────────┴───────────────┴──────────────────────────────┘ The general rules are: 1. A single number is treated as "Net". 2. If the point number is not specified, it is set to "0". ═══ 1.4.2. Writing messages ═══ There are two different ways to add new messages to your message base: Writing new messages If you want to enter a new message, click on the button or press CTRL-W. The message window will be cleared and your own name and address will be inserted into the appropriate fields of the message header. You can now enter the name and address of the receipient (see "Entering Fidonet addresses") and write your message in the message window. After you've entered your message, click on the button or press CTRL-S. The message will then be saved to your message base. Click on the button or press ESC if you don't want to save your message. Replying to a message To reply to a message you've received, click on the button or press CTRL-R. You may either reply to the sender of the message (the usual case), or to the recepient. You may also place your reply in a different message area (usually a Netmail area. After editing your reply message, click on the button or press CTRL-S to save it. Click on the button or press ESC to discard your reply. ═══ 1.4.3. Changing Messages ═══ Messages can be changed after you've saved them. Press the button to switch to edit mode. Now you can re-edit your message. You can change the message text and the message header. To toggle the attributes of the message, press the Change button. A dialog window appears, where you can set or clear the message attributes. If you edit a message that was already sent or that is not not a local message, you will get a warning. Press the button to save your changes. If you want to discard the edited message, press the button. ═══ 1.4.4. Crossposting messages ═══ Crossposting a message means that the same message is saved in more than one area. You can activate crossposting by selecting Crosspost from the menu. This function is available when you are writing a message. The area list is opened and you can select the areas, where the message should be saved. Note: You don't have to select the current area in the list. The message is always saved in the current area. Just select the additional areas. When crossposting mode is active, a checkmark is displayed in front of Crosspost in the menu. You can deactivate crossposting mode by selecting Crosspost again. The checkmark will disappear again, indicating that you're in normal editing mode. ═══ 1.4.5. Using Carbon Copy Lists ═══ Using a carbon copy list means that you're sending the same message to different addressees. Carbon copy lists can only be used for Netmail. Imagine the following example: You're compiling a newsletter that you're sending to a number of people on a regular basis. To perform this task with FleetStreet, you can create a carbon copy list named "Newsletter". Now you can add all the people who should receive the newsletter to the list. Now, when you want to send the letter via Netmail, compose your message as you would normally do it. But instead of entering a addressee, select Carbon copy from the menu. You can now select your carbon copy list "Newsletter" that you've configured before. The text "*** Newsletter ***' appears, indicating that you're using the list. When you're sending the next issue of your newsletter, you don't have to create a new carbon copy list. You can simply re-use the previous one. ═══ 1.4.6. Using nodelists ═══ What's it all about? Nodelists contain the names and addresses of all participants of a network. FleetStreet can look up the address of the addressee in a nodelist. You need a compiled nodelists in "Version 7" format for doing so. This format is generated by FastLst (among others). FleetStreet needs the data file and the sysop index file. Configure your nodelist compiler accordingly. How does FleetStreet find the nodelists? There is a page for the nodelists in the setup notebook. You must create a "Domain" for each nodelist. A domain entry contains the name of the domain and the pathnames of the nodelist files. You must enter the full pathname including drive letter an file extension. What else must be done? Select "Version 7" in the setup notebook. In addition you can enter descriptions for the nodelist flags. How can I use nodelists? When writing a NetMail message, enter the full name of the addressee or enter part of the last name. Then press ENTER. If the name is found, the address is used immediately. If it is found more than once, a selection dialog appears. In some other dialogs where you need to enter an address there is a "?" button. Press this button to look up the address(es) of the name that you've entered already. ═══ 1.4.7. Drag and Drop in FleetStreet ═══ There are several situations in FleetStreet where you can use Drag and Drop to perform various tasks. Setting up colors and fonts You can assign colors and fonts to several elements of the FleetStreet windows by using the color panel and the font panel of OS/2. See "Changing colors and fonts" for details. Entering file names Whenever FleetStreet expects a file name to be entered, you can drag the file from a WPS folder to the entry field. The filename is then entered automatically. Importing text files When you are writing a message you can drag a text file from a WPS folder to the editor window. The file is imported and its contents are inserted at the current cursor position. Manipulating Carbon Copy Lists You can copy and move carbon copy entries by dragging them from one CC list to another. Deleting messages You can drag the current message to the shredder to delete it. Start the dragging over the editor window. Printing messages You can drag the current message to a printer object to print it. Start the dragging over the editor window. Note: When you configured FleetStreet to print directly to a device, the message is not necessarily printed on the printer that is symbolized by the printer object. It is still printed to the device specified in the setup. Exporting messages You can drag the current message to a WPS folder to export it. Start the dragging over the editor window. Attaching files You can drag files from any WPS folder to the subject line to attach them to the message. The file names are entered in the subject line, the "File Attach" flag is switched on and a short summary of the attached files is displayed. This works only when you write a message! [More of this sort is in work] ═══ 1.5. Registering FleetStreet ═══ This Beta version need not be registered. However, it can only be used for a limited amount of time. Verification of the registration code may be active for testing purposes, but that has no further meaning. All features in this version that are currently de-activated can not be activated with a code. They are simply not yet implemented. If you still like to register FleetStreet, have a look at the file REGISTER.ENG that comes with FleetStreet. It contains all the information necessary to register this copy. ═══ 1.6. Future enhancements ═══ Some things that we have in mind for future versions: We will port it to MS Windows - NOT! It would cost us a lot of time and/or money to do a Windows port. Even if we did it, the Windows version wouldn't be as powerful and comfortable as the OS/2 version. Enhancements to the user interface We have several things in mind, but we like to hear from YOU, too. Other message base types At the moment Squish is the only OS/2 based mail processor. But if a different system is ever going to be as popular as Squish, we will be prepared to it. ═══ 2. Help for keys ═══ You can use different key combinations depending on if you're reading or editing messages. ■ Keys generally available ■ Keys only available when reading messages ■ Keys only available when editing messages ═══ 2.1. Keys generally available ═══ The following keys are generally available: Alt-X Exit FleetStreet F1 Help Ctrl-F1 Help for keys Ctrl-D Change default name and address ═══ 2.2. Keys only available when reading ═══ The following keys are available when you're reading messages: Ctrl-R Reply to sender Ctrl-Shift-R Reply to sender, don't join lines Ctrl-N Reply to sender, place reply in different area Ctrl-Shift-N Reply to sender, place reply in different area, don't join lines Ctrl-E Change a message Ctrl-A Select message area Ctrl-L List of messages Ctrl-P Print message Ctrl-T List of threads Ctrl-M Move message Ctrl-C Copy message Ctrl-F Forward message Ctrl-Q Request files Ctrl-X Export message Ins Write new message Del Delete message Ctrl-I Find message Ctrl-K Show kludge lines Cursor left Go to previous message Cursor right Go to next message Ctrl-Cursor left Go to previous reply Ctrl-Cursor right Go to next reply Ctrl-Home Go to first message Ctrl-End Go to last message Shift-Home Go to the old lastread Shift-Right Go to the next area that is already scanned and contains new messages ═══ 2.3. Keys only available when editing ═══ The following keys are available when you're editing messages: Ctrl-Y, Ctrl-Backspace Delete the current line Ctrl-U Undo last changes Ctrl-S Save message Ctrl-I Import file Ctrl-X Crosspost message Ctrl-C Carbon copy F2...F12 Insert keyboard macro Esc Discard message Ctrl-A, Ctrl-Shift-F Change attributes of message Ctrl-Shift-K Toggle the "Kill/Sent" message attribute Ctrl-Shift-C Toggle the "Crash" message attribute Ctrl-Shift-A Toggle the "File attached" message attribute Ctrl-Shift-R Toggle the "File request" message attribute Ctrl-Shift-P Toggle the "Private" message attribute ═══ 3. Menu ═══ ═══ 3.1. File ═══ Menu items for importing and exporting files. ═══ 3.1.1. Import File ═══ Inserts text from a given file into the message window. This is only available when editing a message. ═══ 3.1.2. Export File ═══ Writes the current message to a text file on disk. This is only available when reading messages. ═══ 3.1.3. Write Echotoss now ═══ Write the echotoss file immediately. ═══ 3.1.4. Start command shell ═══ Starts a commandline session. The program used as shell is specified in CONFIG.SYS via OS2_SHELL. ═══ 3.1.5. Print ═══ Print current message ═══ 3.1.6. Exit FleetStreet ═══ Exits the program. Changes to the configuration will be saved. ═══ 3.2. Edit ═══ Menu items to perform changes to a messages and for interaction with the clipboard. ═══ 3.2.1. Cut ═══ Copies marked text in the message window to the clipboard and deletes the marked text. ═══ 3.2.2. Copy ═══ Copies marked text in the message window to the clipboard. If no text is marked, the whole message is copied to the clipboard. ═══ 3.2.3. Paste ═══ Inserts the contents of the clipboard into the message window. ═══ 3.2.4. Clear ═══ Deletes marked text in the message window. ═══ 3.2.5. Undo ═══ Takes back the latest changes in the message window. Note: This does only apply to text in the message window, not to whole messages. Deleted messages can not be recovered. ═══ 3.2.6. Delete Line ═══ Deletes the current line in the message window. ═══ 3.3. Message ═══ Menu items to manipulate messages ═══ 3.3.1. Move Message ═══ Move the current message to a different area ═══ 3.3.2. Copy Message ═══ Copy the current message to a different area ═══ 3.3.3. Forward Message ═══ Forward the current message ═══ 3.3.4. Crosspost Message ═══ Post the message in more than one area If this menu item is checked, you've already selected the destination areas. Select this menu item again to uncheck it. ═══ 3.3.5. Request Files ═══ Request files from the current message ═══ 3.3.6. Carbon Copy ═══ Send the message to more than one receipient using a carbon copy list. If this menu item is checked, you've already selected a carbon copy list. Select this menu item again to uncheck it. ═══ 3.3.7. Mark all messages ═══ Mark all messages in the current area as "read", up to the current message. See "Mark messages". ═══ 3.3.8. New message ═══ Write new message in the current area. ═══ 3.3.9. Change ═══ Change current message. ═══ 3.3.10. Reply ═══ Reply to current message. ═══ 3.3.11. Delete ═══ Delete current message. ═══ 3.3.12. Find ═══ Fint text in a message in this area or in all areas. ═══ 3.4. Setup ═══ Menu items to set up FleetStreet. ═══ 3.4.1. Setup Options ═══ Press the help buttons on the various pages of the setup notebook to get further help. ═══ 3.4.2. Message Template ═══ Define the various fields of the message template ═══ 3.4.3. Carbon Copy Lists ═══ Define and modify carbon copy lists. ═══ 3.4.4. Current Name/Address ═══ Change your current name and address. This function is only available in Netmail areas. ═══ 3.4.5. Save Options ═══ Saves the current configuration. ═══ 3.5. Windows ═══ Menu items for switching to one of the FleetStreet windows ═══ 3.5.1. Kludge lines ═══ Switch to the kludge line window ═══ 3.5.2. Thread list ═══ Switch to the thread list window ═══ 3.5.3. Message list ═══ Switch to the message list window ═══ 3.5.4. Area list ═══ Switch to the area list window ═══ 3.5.5. Find results ═══ Switch to the find results window ═══ 3.5.6. Find progress ═══ Switch to the fin progress window ═══ 3.6. Help ═══ Menu items to give you information about FleetStreet ═══ 3.6.1. Help index ═══ Show the help index ═══ 3.6.2. General Help ═══ Introduction to FleetStreet ═══ 3.6.3. Using Help ═══ Show help for using the help facility ═══ 3.6.4. Keys help ═══ Shows the keys combinations you can use ═══ 3.6.5. About ═══ Shows information about FleetStreet and its authors ═══ Setup ═══ You should never see this help panel! Now you've seen it, please send a note to the authors and say that you've seen Panel #1. Thank you! ═══ 4. Setup ═══ Setup ═══ 4.1. User names ═══ If you want to use FleetStreet you must have at least one user name. Your names are shown in the list. To add new names press the Add button. You are prompted for a new name. To delete a name select the name in the list and press the Delete button. To change a name select the name in the list and press the Change button. To make a name the default, select the name in the list and press the Default button. If you create new message areas or read areas from the squish configuration file, the default name will be selected as the initial name for that area. ═══ 4.2. Addresses ═══ If you want to use FleetStreet you must have at least one address. Your addresses are shown in the list. To add new addresses, press the Add button. You are prompted for a new address. To delete an address, select the address in the list and press the Delete button. To change an address, select the address in the list and press the Change button. To make an address the default, select the address in the list and press the Default button. If you create new message areas or read areas from the squish configuration file, the default address will be selected as the initial address for that area. ═══ 4.3. Default origin ═══ The origin line is optional, but it's always a good idea to have one. Enter the text for your origin line. ═══ 4.4. Squish options ═══ FleetStreet can read the squish configuration file, thus making it easier to provide consistency between your message base maintained by SQUISH and that maintained by FleetStreet. Echotoss.Log The Echotoss.Log file is a plain ASCII text file where all the message areas are listed, where you have entered mail. Squish and other utilities read this file to process only these areas (normally Squish processes all areas, which may take much longer). FleetStreet creates this file if necessary and writes the appropriate area names to it. If this option is turned off, FleetStreet does not write to the file. Lastread This is the offset into the lastread file for each message area. The number of the message that was last read is stored in in a lastread file (*.SQL files for Squish message areas). Each user of a BBS has his own offset, the sysop usually has offset 0. Some utility programs use an offset as well. If you don't understand the meaning of this setting it's best to leave it at 0. The current limit for this setting is 500, thus giving the sysop access to the lastread pointers of his first 500 users. If you really have a need for more users, feel free to drop us a note. Squish.Cfg If you want FleetStreet to read the squish configuration file automatically at startup, klick on "read SQUISH.CFG". Specify path and name of the file in the entryfield below, or press the "Locate" button to select the file via a file dialog. If an error occures while reading the new file, you will get an error message and nothing will be lost. Note: You must have entered at least one user name to read the file. ═══ Error reading SQUISH.CFG ═══ An error occured while trying to read the squish configuration file. There are two causes for this error: 1. The file didn't exist or FleetStreet couldn't access it, maybe because it was already in use by another program, or 2. The file was read, but there is no area definition in it. Try again and select a valid configuration file. ═══ Duplicate Areas ═══ One or more areas that were read from the squish configuration file are already defined as private areas, i.e. they have the same area tag. Area tags must be unique in the area list. To solve the problem do one of the following: ■ Change the area tags of your private areas, ■ Edit the squish configuration file. ═══ 4.5. Nicknames ═══ With FleetStreet it is possible to define nicknames for users you often write to. To use these nicknames, just enter the nickname in the TO field of the message and press "Enter". The nickname will be replaced by the real name, and the address of the user will be entered automatically in the address field. If you defined a subject line for this nickname, it will be inserted in the subject field as well. To define a nickname, do the following: 1. Press the "Add" button, 2. Fill in the fields, 3. Press "OK". To change a nickname, do the following: 1. Select the nickname in the list, 2. Press the "Change" button or double click on the entry, 3. Do your changes, 4. Press "OK". To delete a nickname, do the following: 1. Select the nickname in the list, 2. Press the "Delete" button. ═══ 4.5.1. Nickname ═══ Enter a new nickname or change an existing nickname. Nickname This is what you type to reference this nickname. Real name This is the name of the addressed user as you would usually use it. Address Address of the user. Use a 3D or 4D address. ? Lookup address of the user in the nodelist. Subject Default subject line. Useful for pseudo-users like area managers. Leave this field blank if you don't want to have a subject line for this nickname. 1st line First line in message text. When this line contains a %?, you are prompted for additional text. This feature is intended to be used in conjunction with UUCP gateways. Consider the following example: Nickname: u Real name: UUCP Address: 1:234/567 Subject: test First line: TO: %?"Enter UUCP address" Now, when you use the nickname "U", the UUCP gateway is addressed and you are prompted to enter the FQDA of the addressed user. You can use the tokens %? or %?"prompt text". Attributes Default message attributes. These are set automatically when you use the nickname. Press OK to confirm your changes. Press Cancel to abort editing. ═══ Prompt ═══ There is a %? token in the nickname attribute "first line". You are prompted to enter additional text. ═══ Delete Nickname ═══ Press "YES" if you want to delete the selected nickname. Press "NO" if you want to keep it. ═══ Have Nickname ═══ There already is an entry in the list with the same nickname. Nicknames must be unique. Re-edit the entry. ═══ 4.6. Macros ═══ If you are editing a message and press F2 through F12, the text associated with that key is inserted into the message window. Note: F1 is reserved for HELP. A macro may have up to 240 characters. ═══ 4.7. Nodelist ═══ FleetStreet can look up fidonet addresses of sysops by reading one or more compiled nodelists. Nodelist Enable nodelist lookups. You may either disable lookups or enable lookups for Version 7 nodelists. Note: Version 6 nodelists are not supported. ═══ 4.8. Domains ═══ Domains are necessary to tell FleetStreet where to look for your compiled nodelist(s). Domains List of currently defined domains. Add Add a new domain to the list. Change Change the domain information for the selected domain. Delete Delete the selected domain. ═══ 4.8.1. Domain ═══ A domain has three attributes: Domain name Name of the domain, which must be unique. Sysop index file Index file of the compiled nodelist for this domain. This is usually SYSOP.NDX for your primary AKA. The full path and name of the file must be entered. Nodelist data file Data file of the compiled nodelist for this domain. This is usually NODEX.DAT for your primary AKA. The full path and name of the file must be entered. ═══ Domain already defined ═══ You have already defined a domain with this name. Domain names must be unique. Enter a unique domain name and press OK ═══ Delete Domain ═══ You are about to delete a domain. Press YES to delete the domain, press NO to keep it. ═══ 4.9. Modem types ═══ The compiled nodelist contains information about the modem of each node. This information is saved in a single byte. When you compile your nodelist, the nodelist compiler sets the bits of this field according to the modem flags that are in the distribution nodelist. With some compilers you can associate the bits with one or more flags. Refer to the documentation of your nodelist compiler for details. Example: When FastList (written by Alberto Pasquale) is configured with TypeDef HST 1 TypeDef PEP 2 TypeDef V32 4 TypeDef V32B 8 TypeDef MNP 16 TypeDef V42 32 TypeDef V42B 64 TypeDef ISDNB 128 TypeDef ISDNC 128 TypeDef ISDNA 128 TypeDef UISDNB 128 TypeDef UISDNA 128 TypeDef UISDNC 128 set up FleetStreet with Bit 0: HST Bit 1: PEP Bit 2: V32 Bit 3: V32b Bit 4: MNP Bit 5: V42 Bit 6: V42b Bit 7: ISDN When looking up a node, the modem flags are displayed correctly. ═══ 4.10. Options ═══ You may specify several options that influence the way FleetStreet operates. Use ^aPID The ^aPID klugde line is used instead of the long tearline. Use Tearline in Netmail The Tearline is used in netmail areas. When turned off, the tearline is only used in echomail areas. Use Origin in Netmail The Origin line is used in netmail areas. When turned off, the origin line is only used in echomail areas. Area scan at startup The areas are scanned automatically when FleetStreet is started. Beep on personal mail FleetStreet makes noise when a message is displayed which is addressed to you. Ask for confirmation When you delete messages or make other significant changes, FleetStreet will ask you to confirm the changes. Don't use API for scanning When scanning the areas for new mail, FleetStreet doesn't use the Squish MsgAPI, but accesses the message base files directly. This is usually much faster, but may not work with versions of the API newer than the current one. This option only affects Squish style message areas. ═══ 4.11. Startup area ═══ Specifies whether FleetStreet opens a specific area when started, or whether the area is opened that was open when you last used FleetStreet. ═══ 4.12. Editor options ═══ Quotes color Tearline color Origin color Select a color for the corresponding element in a message. Note: These colors are not used when writing messages. The background color and the color of normal message text must be selected using the color panel. Tab size Number of whitespace charaters that are inserted into the message text when you press the TAB key while editing. ═══ 4.13. Thread list ═══ The thread list can be displayed in various modes: All Threads All message threads containing all messages in the current area are displayed. Threads with unread messages Only those threads, that contain at least one unread message, are displayed. Unread messages only Only unread messages are displayed. Message threads begin with the first unread message in the thread and end with the last unread message. If a thread of unread messages is interrupted by a read message, two threads will be displayed. In addition, you may specify whether the name of the sender of the message should be displayed or not. ═══ 4.14. Exit ═══ When you exit FleetStreet, two different actions may be performed: Generate ERRORLEVEL FleetStreet generates exit codes that my be queried in batch file using ERRORLEVEL or Rexx programs using RC. The exit codes are: 0 Nothing special happened 1 You have entered new netmail only 2 You have entered new echomail only 3 You have entered new echomail and new netmail 255 An unrecoverable error occured Execute command line One of the three command lines are executed, depending on the conditions mentioned above. ═══ 4.15. Register ═══ After you've registered FleetStreet, enter your registration code and serial number here. FleetStreet will then run in registered mode. Registration code Registration code, that you've received. The code must be entered exactly in the same way, it must be exactly 40 letters long. Serial number Serial number, that you've received. ═══ Invalid registration code ═══ The registration code and/or serial number is not valid. FleetStreet will still run in unregistered mode. If you've registered FleetStreet, check the code and serial number. If you've not registered FleetStreet, REGISTER! ═══ 4.16. Printer ═══ FleetStreet knows two ways of printing messages: Via a PM printer driver FleetStreet uses the currently active printer object and the driver associated to it when printing messages. This ensures that FleetStreet can print on every printer that has a driver, even if it can't print plain ASCII text (e.g. Postscript printers). Directly to a device FleetStreet sends the message in plain ASCII text to the device specified below. If you enter "PRN" as the device name, OS/2 prints the message on your printer with the default printer font. This is usually much faster than printing via a PM driver, but may not work with all types of printers. ═══ 4.17. Layout ═══ Show date arrived The date and time when the message arrived at your system is displayed. Layout Select a layout pattern. ═══ New username ═══ Enter the new name or edit the old name. Press "OK" to confirm your changes. Press "Cancel" if you don't want a new name or if you want to keep the old one. ═══ Delete username ═══ If you want to delete the selected name, press "YES". Press "NO" if you want to keep it. ═══ New address ═══ Enter the new address or edit the old address. Press "OK" to confirm your changes. Press "Cancel" if you don't want a new address or if you want to keep the old one. ═══ Delete address ═══ If you want to delete the selected address, press "YES". Press "NO" if you want to keep it. ═══ Area already defined ═══ There already is a message area with this area tag. Area tags must be unique. Choose a different tag for the new area. ═══ Template ═══ You should never see this help panel. ═══ 5. Template ═══ Message templates are used to define a predefined appearence of new messages, replies and forwards. When writing, replying or forwarding, the appropriate template items are combined with the message text. Special tokens in the message template are replaced by specific parts of the orignal message when the template is processed. The message template is processed when you enter the editor window for the first time when writing, replying or forwarding. When you have entered a subject or name of the addressee 'till then, these parts can be used for token replacement. When you didn't have entered these parts, the appropriate tokens are replaced "empty". General order: New Message: [Header template] [Message text] [Footer template] Reply: [Header template] [Reply template] [Message text] [Footer template] Reply in different area: [Reply-in-different-area template] [Header template] [Reply template] [Message text] [Footer template] Crosspost: [Crosspost template] [Header template] [Message text] [Footer template] Carbon copy: [Carbon copy template] [Header template] [Message text] [Footer template] Forward: [Forward template] [Original message text] [Forward footer template] [Header template] [Footer template] ═══ 5.1. Tokens ═══ The following tokens are available in message templates: %T Name of the addressed user (original message) %Z First name of the addressed user (original message) %R Address of the addressed user (original message). When replying to echomail or when forwarding echomail, this token is ignored. %O Name of the addressed user (new message) %P First name of the addressed user (new message) %F Name of the sending user %G First name of the sending user %J Address of the sending user %A Area tag. When crossposting a message, this is the destination area. When replying in a different area or forwarding a message, this is the original area. %E Area description. When crossposting a message, this is the destination area. When replying in a different area or forwarding a message, this is the original area. %U Your own name %I Your first name %W Your own address %C Names of the users in the carbon copy list %D Date of the message you are replying to %M Time of the message you are replying to %S Subject of the message you area replying to %% A literal % ═══ 5.2. Quotes ═══ Quoting messages is influenced by the following settings: Quoted line length Length of the lines measured in characters when the message is converted to quoted text. Join length Line length for joining two successive lines. When the first line is longer than this number, the lines are joined. Quoting style Either use the writer's initials and a ">" as indicator of quoted lines, or use ">" only. ═══ 5.3. Header ═══ The header template is inserted at the top of the message. Available tokens: %T, %Z ═══ 5.4. Footer ═══ The footer template is inserted at the bottom of the message. It is used when you write new messages or reply to a message. Available tokens: %U, %I ═══ 5.5. Reply ═══ The reply template is inserted at the top of the message after the header template. It is only used when ypu reply to a message. Available tokens: %F, %G, %T, %Z, %A, %D, %M, %O, %P, %J, %R, %S, %E ═══ 5.6. Reply in different Area ═══ The reply-in-different-area template is inserted above the header template. It is only used when you reply to a message and place the reply in a different area. Available tokens: %A, %E ═══ 5.7. Forward ═══ The forward template is inserted at the top of the message. It is only used when you forward a message. Available tokens: %F, %G, %T, %Z, %A, %U, %I, %J, %R, %S, %E, %D, %M, %W ═══ 5.8. Forward footer ═══ The forward footer template is inserted after the original message text. It is only used when you forward a message. Available tokens: %F, %G, %T, %Z, %A, %U, %I ═══ 5.9. Forward order ═══ Additional text first Your comments to a forwarded message appear before the forwarded message. Forwarded message first The forwarded message appears before your comments. ═══ 5.10. Crosspost ═══ The crosspost template is inserted at the top of the message. It is used when you crosspost a message in several areas. Available tokens: %A ═══ 5.11. Carbon copy ═══ The carbon copy template is inserted at the top of the message. It is used when you use a carbon copy list to send a message to more than one addressee. Available tokens: %C ═══ 6. Carbon Copy Lists ═══ Topics: Carbon copy list setup Carbon copy list Carbon copy list entry Carbon copy list name Select carbon copy list ═══ 6.1. Carbon copy list setup ═══ The currently defined carbon copy lists are displayed. You may add new lists, delete lists, change the content of a list or change the name of a list. Add Add a new carbon copy list. Contents Display, change, delete and add entries in the selected carbon copy list. Delete Delete the selected carbon copy list. Rename Change the name of the selected carbon copy list. ═══ 6.2. Carbon copy list ═══ The entries in the selected carbon copy list are displayed. You may add new entries, change entries or delete entries. Add Add a new entry to the list. Change Modify the selected entry. You may also double click on the entry to change it. Delete Delete the selected entry. You can delete entries by dragging them to the shredder as well. You can copy or move entries between CC lists by opening two lists and drag an entry from one list to another. Hold down the CTRL-Key to copy entries instead of moving them. ═══ 6.3. Carbon copy list entry ═══ Enter a new entry or change an existing entry. Name Username of the addresse. You may also use a predefined nickname here. Enter the nickname and press TAB. The nickname will be replaced by the real name, and the address of the user will be inserted into the address field. Address Network address of the addressee. ? Lookup address of the addressee in the nodelist. Show name in CC lines Specify whether the name of this user should appear in the list of names that is added to your message if you use a message template. ═══ 6.4. Carbon copy list name ═══ Enter a name for the new carbon copy list or change the name of the existing list. Carbon copy lists must have unique names. Press OK to confirm your changes. Press CANCEL to abort editing. ═══ 6.5. Select carbon copy list ═══ Select one of the predefined carbon copy lists. Press OK to confirm your selection. Press CANCEL if you don't want to use a carbon copy list. ═══ Delete carbon copy list ═══ Press YES if you want to delete the selected carbon copy list. Press NO if you like to keep it. ═══ Already have carbon copy list ═══ There already is a carbon copy list with this name. Carbon copy lists must have unique names. ═══ Delete carbon copy entry ═══ Press YES if you want to remove the selected entry from the list. Press NO if you like to keep it. ═══ 7. Dialogs ═══ ═══ 7.1. Attributes ═══ Set the attributes for this message. Message attributes explained in detail: Private Set this flag if your message is of private nature, i.e. only the addressee of the message should see it. Note: This flag is only useful for netmail. In most echomail conferences private messages are not allowed. If you use the private flag in such a conference, everybody will still be able to read the message. Crash The message will go directly to the addressed system, i.e. it will not be routed over your uplink. Your mailer will dial out when possible and will try to deliver the mail. Received The message is a personal message and has already been read by you. Sent The message has been sent to your uplink. File Attached The subject line specifies the name of a file that is to be sent to the addressee together with the message. Always combine this message attribute with the "Crash" attribute! Most systems will not route an attached file. In Transit The message is not addressed for your system and is not originating from your system. It will be passed to another system. It's best to leave this untouched. Orphan The destination address is unknown or the destination system is marked as "Hold" or "Down" in the current nodelist. It's best to leave this untouched. Kill/Sent The message will be deleted by Squish after it is packed for your uplink. Local The message has been entered locally, i.e. by you. Hold For Pickup The message will not be sent File Request The subject line consists of file names and magic names of files that will be requested from the addressed system. Squish will generate the request file when packing your mail. Use this attribute in netmail areas only. Return Receipt Request Indicates that you like the receiver of the message to reply to it and at least confirm that he has received your message. Is Return Receipt The message is such a reply. Audit Request This one is used by SEAdog. It's best to leave it untouched. File Update Request Same as a file request, but the files will be transferred only if they are newer than the ones you already have. ═══ 7.2. Reply ═══ You may either reply to the sender of the message or to the receipient (which often is described as "followup reply"). Reply to FROM Reply to the sender of the message Reply to TO Reply to the addressee of the message Don't join lines Quoted lines are not joined. This is useful when quoting wide tables or enumerations, or when it's important that lines that are already quoted are not joined. Place reply in different area Place the new message in a different area, e.g. a Netmail area. Don't quote message Don't include any quoted text in the new message. ═══ 7.3. Find ═══ Find a text string in the message base. Text to search for The text that is to be searched for in the message base. Header only Only the name of the sender, the name of the addressee and the subject line are searched for the text. Header & text The whole message is searched for the text. All areas The search is performed on all areas. Ignore case The case of search text and message are ignored while searching. Fuzzy, level A fuzzy search is performed, i.e. search text and message need not match exactly. "Level" specifies a sensitivity value, ranging from 0 (exact) to 4 (least exact). ═══ 7.4. Searching ═══ The displayed area is currently scanned for messages containing the text you have entered. Press Stop to stop searching. ═══ 7.5. Results ═══ The results list contains messages that contain the text that you've entered to search for. You can view the full message by pressing Go to message or by double clicking on the line in the results list. Press Clear to clear the results list. The messages found previously stay in the results list until you either close the dialog window or press this button. Select Scroll to make the results list scroll down each time a message is added to the list. Check Keep in front to keep this window above the FleetStreet main window. ═══ 7.6. Area list ═══ The area list contains all message areas accessible for FleetStreet. You can switch to one of these areas, create and delete areas and set attributes for areas. Double click on the area or press ENTER to switch to that message area. Press Scan to start a re-scan of all areas. This may be necessary if Squish tossed new messages since the areas were last scanned. The scanning takes place in a separate thread. You may continue reading while the scanning continues in the background. Related Topics: ■ Contents of the area list ■ Creating and deleting areas ■ Setting attributes for areas ■ Customizing the area list ═══ Delete Area ═══ You've decided to delete the selected area. If you press Yes, the area will be removed from the area list. However, the message base file(s) on your hard disk drive will not be deleted and may be re-used at a later time. Press No if you don't want to delete this area. ═══ Area settings ═══ You should never see this help panel! Now you've seen it, please send a note to the authors and say that you've seen Panel #2. Thank you! ═══ 7.7. Area settings ═══ Topics: General area settings Message base settings Area attributes ═══ 7.7.1. General area settings ═══ Fill in the description, area tag, default address and origin for this area. If default address and area tag are not editable, this area was read from the squish configuration file. The default address and area tag must then be changed there. ═══ 7.7.2. Message base settings ═══ Message base type Specify the format of the message area on disk. Area type Specify whether the area is a netmail area or an echomail area. Area path/file Specify where the messages are stored on disk. For FTS *.MSG areas specify the path to the directory that contains the *.MSG files. For Squish areas specify the path and root name (eight characters) of the area files. If these settings are not changeable, the area was read from the squish configuration file, and settings must be changed there. ═══ 7.7.3. Area attributes ═══ Every message area can have some default message attributes and additional area attributes. Default message attributes Messages entered in this area will have the specified attributes by default. See "Message Attributes" for an explanation of the various attributes. Exclude from reading The message area will not appear in the area list when you activate "hide excluded areas" there. This is useful for sysops who have lots of areas but only want to read a few of them. Foreign characters allowed Indicates that usage of foreign characters (i.e. ASCII values above 127) is allowed in this area. If such characters are not allowed, FleetStreet will convert these characters while typing. See "Translation table". Separator line A separator line will be drawn below this area in the area list. ═══ 7.7.3.1. Character translation table ═══ When foreign characters (8 bit ASCII) are not allowed in a message area, FleetStreet uses the following translation table to convert characters while typing: ┌───┬──────────┐ │а │a │ ├───┼──────────┤ │Г │a │ ├───┼──────────┤ │Д │ae │ ├───┼──────────┤ │О │Ae │ ├───┼──────────┤ │Е │a │ ├───┼──────────┤ │С │ae │ ├───┼──────────┤ │Т │Ae │ ├───┼──────────┤ │A │a │ ├───┼──────────┤ │П │A │ ├───┼──────────┤ │Ж │a │ ├───┼──────────┤ │П │A │ ├───┼──────────┤ │с │ss │ ├───┼──────────┤ │З │c │ ├───┼──────────┤ │А │C │ ├───┼──────────┤ │п │>> │ ├───┼──────────┤ │° │deg │ ├───┼──────────┤ │Ў │/ │ ├───┼──────────┤ │· │. │ ├───┼──────────┤ │ │| │ ├───┼──────────┤ │В │e │ ├───┼──────────┤ │Р │E │ ├───┼──────────┤ │И │e │ ├───┼──────────┤ │Й │e │ ├───┼──────────┤ │К │e │ ├───┼──────────┤ │Я │f │ ├───┼──────────┤ │ │ │ ├───┼──────────┤ │б │i │ ├───┼──────────┤ │М │i │ ├───┼──────────┤ │Л │i │ ├───┼──────────┤ │Н │i │ ├───┼──────────┤ │н │! │ ├───┼──────────┤ │и │? │ ├───┼──────────┤ │ │<- │ ├───┼──────────┤ │к │-| │ ├───┼──────────┤ │ц │mc │ ├───┼──────────┤ │д │n │ ├───┼──────────┤ │е │N │ ├───┼──────────┤ │в │o │ ├───┼──────────┤ │У │o │ ├───┼──────────┤ │Х │o │ ├───┼──────────┤ │Ф │oe │ ├───┼──────────┤ │Щ │Oe │ ├───┼──────────┤ │м │1/4 │ ├───┼──────────┤ │л │1/2 │ ├───┼──────────┤ │о │<< │ ├───┼──────────┤ │ё │+- │ ├───┼──────────┤ │Ь │PS │ ├───┼──────────┤ │¤ │qd │ ├───┼──────────┤ │г │u │ ├───┼──────────┤ │Ц │u │ ├───┼──────────┤ │Ч │u │ ├───┼──────────┤ │Б │ue │ ├───┼──────────┤ │Ъ │Ue │ ├───┼──────────┤ │ж │a │ ├───┼──────────┤ │з │o │ ├───┼──────────┤ │Ш │y │ └───┴──────────┘ ═══ 7.7.4. Contents of the area list ═══ For each area in the list, the ■ area description ■ number of messages in the area ■ number of unread messages in the area are displayed. For unscanned areas, "-" is displayed as number of messages. The area description initially is the same as the area tag. The area description is displayed in the main window and can be changed. The area list has three different views: ■ All areas ■ included areas ■ excluded areas Areas can either be "included" (default) or "excluded". "Excluded" means that you usually don't read this area and want it to stay out of your way. This flag is useful for BBS sysops who have a lot of areas on their system but like to read only a few of them. For "All areas" all areas are displayed in the list regardless of their exclusion status. For "included areas" only those areas are displayed which are flagged as "included". For "excluded areas" only those areas are displayed which are flagged as "excluded". You can switch between these views by opening the context menu of the area list and selecting the desired view. The current view is checked in the menu. When you open the area list, it is displayed in the default view. You can change the default view in the area list settings notebook. Excluded areas are not scanned at startup. However you can scan excluded areas explicitly. To do so open the context menu of the area and select "scan". Alternatively you can select "scan all" in the context menu of the area list to scan all areas which are displayed in the current view. ═══ 7.7.5. Creating and deleting areas ═══ Creating a new area You can create new areas by selecting "Create another" in the context menu. An empty settings notbook for the new area is opened. Fill in all fields and close the notebook. The new area is then inserted in the list. All areas created in FleetStreet are local areas. Deleting areas You can delete only those areas which you have created in FleetStreet. Areas which are defined in the Squish configuration file can only be deleted there. To delete an area open the context menu of the area and select "delete". The area will be removed from the list. Note: The area files (*.MSG for *.MSG areas, *.SQ? for Squish areas) are not deleted from disk. ═══ 7.7.6. Setting attributes for areas ═══ Each area has its own set of attributes. These are: ■ Area description ■ Area tag ■ Default user name ■ Default address ■ Origin line ■ Path/File ■ Area format ■ Net/Echo area flag ■ Default message attributes ■ Exclusion flag ■ Other flags For areas defined in the Squish configuration file, area tag, default address, path/file, area format and Net/Echo area flag can not be modified. To change area attributes, open the context menu for the area and select "settings". The exclusion flag can be changed directly using the context menu. ═══ 7.7.7. Customizing the area list ═══ The area list itself has several attributes which influence the appearance of the list. To change these attributes open the context menu of the area list and select "Settings". You can change ■ the default view ■ the sorting order ■ the colors used for the different area types ═══ Area List Settings ═══ ═══ 7.7.8. Default view ═══ When you open the area list it is displayed in the default view. The default view can be one of the following: ■ All areas ■ Included areas only ■ Excluded areas only Views explained in detail: All areas All areas are displayed regardless of their exclusion status. Included areas only Only those areas are displayed which are included. This is the usual view. Excluded areas only Only those areas are displayed which are excluded. Select this view to check your excluded areas from time to time. The current view can always be changed by using the context menu of the area list. ═══ 7.7.9. Sort ═══ The areas can be sorted in various ways: ■ Original order ■ Sorted by area description ■ Sorted by number of unread messages Sorting orders explained in detail: Original order The areas are actually not sorted, i.e. they appear in the same order as they are read from Squish.cfg. Private areas are added to the end of the list. Sorted by area description The areas are sorted by their area description. Netmail areas always appear at the beginning of the list. Sorted by number of unread messages The areas are sorted by the number of unread messages in the area. The detailed order is: 1. Netmail areas in their original order 2. Echomail areas and local areas, which are scanned and contain unread messages. If two areas have the same number of unread messages, they are sorted by area description. 3. Echomail areas and local areas, which are scanned but don't contain unread messages. They area sorted by area description. 4. Echomail areas and local areas, which are not scanned. They are sorted by area desription. ═══ 7.7.10. Colors ═══ You can select different colors for different area types. Select the base color by using the color wheel. The current color is marked with crosshairs. Adjust the brightness of the color by using the slider to the right of the color wheel. ═══ 7.8. Squish message base parameters ═══ There are three major parameters that control how Squish message base file are maintained by the Squish Message API. Max. number of messages Maximum number of messages that can be stored in this area. When additional messages are tossed into this area or when you write new messages in this area, older messages are deleted automatically, if the limit represented by this value is hit. Number of skipped messages When deleting messages as described above, this nummer of messages (from the beginning of the message base) are skipped. Note: When you set this number to a value other than 0, you must set a maximum of messages as well. Number of days to keep messages Specifies the number of days that messages should be kept. Messages older than this number of days are deleted when you run SQPACK. When you set all the numbers to 0, Squish will not delete any message automatically. ═══ Error reading parameters ═══ The Squish area parameters could not be read. This may be caused by one of the following reasons: ■ another process uses the file exclusively ■ you don't have access rights to the file ■ the file doesn't exist ═══ Error writing parameters ═══ The Squish area parameters could not be written. This may be caused by one of the following reasons: ■ another process uses the file exclusively ■ you don't have access rights to the file ■ the file doesn't exist ■ the file is write protected ═══ Incorrect parameters ═══ If you set "Number of skipped messages" to a value other than 0, you must set "Max. number of messages" to a non-null value as well. ═══ 7.9. Renumber Area ═══ *.MSG areas become more and more "fragmented" while being used. It's desireable from time to time to renumber the area. After being renumbered, the message files in the area start from 1 and are numbered contiguously. Start Start renumbering the area Cancel Don't renumber the area ═══ 7.10. Message list ═══ The message list displays all messages in an area. The messages are displayed in the same order as they are stored in the message base. Your own name is displayed in red. Read and unread messages are displayed with a message number with a different color. You can select more than one message using the mouse and manipulate them. The following actions can be performed on selected messages: ■ Delete ■ Copy ■ Move ■ Print ■ Export If an error occurs when reading the message in the message base, "*" is displayed in all fields. ═══ 7.11. About FleetStreet ═══ FleetStreet was developed by Harry HerrmannsdФrfer and Michael Hohner. Thanks to Scott Dudley for inventing the Squish Message API and for designing it in such an open way. We'd like to thank our early beta testers for their support. ═══ 7.12. File Dialog ═══ Select a file an press OK. ═══ 7.13. Additional message info ═══ This window contains all the kludge lines and SEEN-BYs of the current message. You can copy its contents to the clipboard. Press Close to close the window. Press Copy to copy the marked text to the clipboard. If no text is marked, the whole content of the window is copied to the clipboard. You may leave the window open while reading. It is automatically updated when you switch to other messages. Check Keep in front to keep this window above the FleetStreet main window. ═══ 7.14. Request files ═══ The requestable files are listed. Select one or more files that you like to request from the sender. Files Requestable files found in the message. select all Select all files. deselect all De-select all files. Add Add a file to the list. Enter the file name in the entryfield below. Request from Name of the sysop to request files from. Address Address of the node to request files from. ? Lookup address of the sysop in the nodelist. Area Message area to place the request messages in. Only non-local netmail areas are offered. direct REQ Don't generate a request message, but create a REQ file directly. Note: Any word in the message text that contains exactly one '.' and has exactly three letters after the '.' is treated as a name of a requestable file. Because of this some names might be offered that aren't valid file names. We find that this is tolerable and better than being unable to request files that don't have an extension of "ZIP" or "ZOO" or the like. ═══ 7.15. Reply list ═══ There is more than one reply to this message. The replies are listed with their message number and the name of the sender. Select the message that you like to read and press OK. Press CANCEL if you don't want to read any of these messages. ═══ Error reading profile ═══ An error occured while reading the profile. This might be caused by a general disk access error, i.e. read only medium, no access rights or the like. FleetStreet will continue with default values, i.e. with no setup. ═══ No profile ═══ The saved profile could not be found or the profile is not valid. The file FLTSTRT.INI must reside in the same directory as FLTSTRT.EXE. If you've startet FleetStreet for the first time, continue with configuring FleetStreet. The settings will be saved when you leave FleetStreet. ═══ Old profile ═══ The profile was saved by an older version of FleetStreet. The settings stored in FLTSTRT.INI can not be used with this version. A new file will be generated when you leave FleetStreet. ═══ Delete Message ═══ You are about to delete the current message. Deleted messages are not recoverable. Press YES to delete the message, press NO if you like to keep it. ═══ Edit Message ═══ The message has already been processed by Squish and has been sent to the destination address. The sent message might not be affected by the changes you make. Refer to the Squish documentation about performing a rescan of the area. If the message is not local, your downlinks may get changed messages, which is not desireable in most cases. Press YES if you want to edit the message anyway, press NO if you don't want to edit the message. ═══ Discard Message ═══ If you press YES the message you have written will not be saved and therefor will not be sent. The message text will be lost. Press NO if you want to continue editing. ═══ Discard Message ═══ You've requested to leave FleetStreet, but you have not saved the message you are currently writing. If you leave FleetStreet your message will not be saved and therefor will not be sent. The message text will be lost. Press NO if you want to continue editing. Press YES if you want to leave FleetStreet. ═══ Message info missing ═══ Your message must have ■ name and address of the receipient ■ text in the subject line If one of these is missing, the message can not be saved. ═══ Message text too long ═══ Squish cannot handle messages that are longer than 16 KB. FleetStreet can handle longer messages when editing, but when you save them, they must be short enough for Squish. See also "Limitations" ═══ Error saving message ═══ An error occured while saving the message. This is usually caused by disk access errors like write protected disks, not enough disk space or no access rights. You may try to solve the problem and try again. If you can't, cancel editing. ═══ 7.16. Current Name/Address ═══ Select a name and/or address and press OK. The current address is displayed in the upper right corner of the main window. If you like to have more names and addresses, go to the setup and add more names and addresses. See "Limitations". If you like to change the default name and address for a specific area, go to the area list, click on the area using the right mouse button, click on "Settings...", select a different name and/or address and close the settings notebook. ═══ 7.17. Thread list ═══ The message threads in the current area are displayed. Read messages and unread messages are displayed with different colors. Threads are messages in an area, which are linked together, because one message is a reply to another message, or because the message has replies for itself. When a message has replies in the thread list, a is displayed before the message. You can click on the or press the + key to display the replies in a tree-like structure. The changes to a . When you press the * key, the whole branch is expanded immediately. Related topics: ■ Display modes ■ Manipulating the messages ■ Reply linkers ■ Marking messages ═══ 7.17.1. Display modes ═══ There are three different display modes: All threads, threads with unread messages and unread messages only. All threads All threads in the area are displayed. Threads with unread messages Only those threads that contain at least one unread message are displayed. These threads are displayed as a whole. Unread messages only Only those messages, that are unread, are displayed. When several unread messages in a thread are linked together without a intervening space, they are displayed in that way. When a thread is interrupted by a read message, the two parts before and after the read message are displayed as separate threads. You can select a display mode by using the context menu of the thread list. You can select the default display mode in the setup notebook of the thread list. ═══ 7.17.2. Manipulating the messages ═══ currently: not supported. ═══ 7.17.3. Reply linkers ═══ FleetStreet exclusively uses the linkage information in the message base, i.e. it does not link messages by itself. You must use a different program for linking messages. It's best to put such a program into your mailer batch program and let it do its work immediately after tossing messages. Reply linkers are (among others): ■ Squish ■ SqmLink ■ SqLink ■ QQLink Squish 1.01 links messages by their subject line. This method has the advantage, that messages without MSGID/REPLY kludge lines can be linked together. The disadvantage is, that changing the subject line tears the thread apart. Also, you can't tell from the links who replied to whom, or whether a message has more than one reply (the reply chain is always linear). Squish 1.10, SqmLink, SqLink und QQLink link the messages by their MSGID/REPLY kludge lines. Choosing this method allows a reply to be linked to its original message. Even after changing the subject line, the messages remain linked together. Threads are no longer linear, but have a tree-like structure. The Squish message base allows a message to be linked to 10 replies. The disadvantage of this method is, that messages can't be linked together when the reply does not contain a REPLY kludge (e.g. when it is written using a QWK reader, when it is imported into the area over a gateway, or when the REPLY kludge was not generated following the standards). ═══ 7.17.4. Mark all messages ═══ If you haven't used FleetStreet for reading in a particular message base before, all messages are marked as "unread". Therefore the message thread list will show you all messages in that area. Because you may have read these messages before, this menu item provides a way to mark all the messages as "read", up to the current message. After you've done that, the thread list will show only messages that are "really" unread, i.e. messages that were added to this area after you've used this function. This function is usually only needed after you've switched to FleetStreet and want to bring "old" message areas up to date. FleetStreet will maintain the "read" flag automatically in the future. Press OK if you like to perform this function. Press CANCEL if you don't like to perform this function. ═══ Unable to load file ═══ FleetStreet can not load the file specified because of one of the following reasons: ■ The file does not exist ■ The file is too long (max. 500 KB) ■ The user does not have access rights to the file ■ The file name specifies a directory or a device, but not a file. ═══ Error loading the file ═══ A disk read error occured while loading the file. The file was not imported. ═══ 7.18. Export File ═══ Select the destination drive and path of the file and type in a file name. with header Select this item to save the header, too. If you deselect this item, only the message body will be saved. separator line Select this item to add a separator line after each exported message. append to file Append the message to the file if it already exists. overwrite file Overwrite the existing file. ═══ Error saving ═══ FleetStreet could not write to the file because of one of the following reasons: ■ The drive or path does not exist ■ The user does not have access rights to the file or directory ═══ Invalid file name ═══ FleetStreet could not write to the file because of one of the following reasons: ■ The file name contains characters that are not allowed in file names ■ The file name is reserved ═══ Resend message ═══ The message you have edited has already been sent before. Press YES if you want to send the changed message again. Press NO if you don't want to send the message. ═══ No device ═══ You've set up FleetStreet to print directly to a device, but you haven't specified a name of the device. Open the setup notebook and enter a valid device name, e.g. PRN. ═══ Cannot print to device ═══ FleetStreet can not print to the device that you've specified. Either the device is in use by another application at the moment, or the device name is not valid. Open the setup notebook and enter a valid device name, e.g. PRN. ═══ Not enough memory ═══ The nodelist lookup could not be performed because there is not enough memory to complete the operation. Strange error though! ═══ Error opening index file ═══ The nodelist index file could not be opened. This is usually caused by one of the following reasons: ■ the index file doesn't exist ■ the path/filename is not correct ■ you don't have access rights for the file ■ another process is using the file exclusively Correct the error and try again. ═══ Error opening data file ═══ The nodelist data file could not be opened. This is usually caused by one of the following reasons: ■ the data file doesn't exist ■ the path/filename is not correct ■ you don't have access rights for the file ■ another process is using the file exclusively Correct the error and try again. ═══ Error reading index file ═══ An error occured while reading the index file. This is usually caused by one of the following reasons: ■ another process is using the parts of the file exclusively ■ the file is corrupt Correct the error and try again. ═══ Error reading data file ═══ An error occured while reading the nodelist data file. This is usually caused by one of the following reasons: ■ another process is using the parts of the file exclusively ■ the file is corrupt Correct the error and try again. ═══ Invalid handle ═══ The handle that is used for nodelist lookups is not valid. Strange error! Please check the following: ■ Which version of FLTV7.DLL is installed? (old one?) ■ Are other processes acessing the nodelist files? ■ Is FleetStreet set up correctly? ═══ 7.19. Nodelist lookup ═══ More than one address was found for the addressed user. Select one of the addresses shown in the list. By default, a brief summary of the found entries is shown. You can view the full nodelist entries by unchecking Brief. ═══ 7.20. Attached Files ═══ The Files that you've attached to the message are displayed. For each file the file name and file size is displayed. If a file doesn't exist, a "* not found *" is displayed in the status field. Correct the file name in the subject line then. ═══ Go to next area ═══ If you like to enter the next area which contains unread messages, press Yes. Press No to stay in the current area. ═══ No next area ═══ FleetStreet didn't find an area which is scanned and contains unread messages. You might try do rescan the areas. ═══ Error while··· ═══ While FleetStreet was working on messages that you selected in the message list or thread list, an error occured. This can have various reasons: ■ The message was not found in the message base. Another process might have deleted it before. ■ The message base is corrupt. ■ A disk read or write error occured. ■ A disk write was not possible, because the file or medium is read-only. Press Abort to stop processing of the marked messages. Press Retry to retry the last action. This may not help in every situation! Press Ignore to ignore the error and continue with the next message. ═══ Can't perform action ═══ The action that you've selected can't be performed with the selected area at this time, because the area is currently in use. You can't renumber an area or change settings of an area, when it is currently open. Switch to a different area first, then try again. ═══ 8. The FleetStreet pipe server ═══ This sections describes the functions of the pipe server of FleetStreet. FleetStreet automagically starts a thread for serving a named pipe. FleetStreet can be controlled through this pipe. The name of the pipe is \PIPE\FleetStreetDoor The pipe is bi-directional. Applications that want to communicate with FleetStreet over the pipe must use a special protocol. This protocol is described below. However, in most cases FleetCom will be sufficient. FleetCom is a special FleetStreet client, which can be easily integrated in batch programs. Related topics: ■ The protocol ■ Commands of the Pipe Server ■ FleetCom ═══ 8.1. The Protocol ═══ A session with FleetStreet is devided into 3 Phases: Session startup, Command transaction and ending a session. These 3 phases are described in this chapter. The following ASCII characters are used: ┌────────┬───────────┬───────┐ │Symbol │Hexadecimal│Decimal│ ├────────┼───────────┼───────┤ ├────────┼───────────┼───────┤ │ACK │06 │6 │ ├────────┼───────────┼───────┤ │NAK │15 │21 │ ├────────┼───────────┼───────┤ │ENQ │05 │5 │ ├────────┼───────────┼───────┤ │ETX │03 │3 │ ├────────┼───────────┼───────┤ │EOT │04 │4 │ └────────┴───────────┴───────┘ Session startup After a client has opened the pipe, it first sends an ENQ to FleetStreet. FleetStreet responds with the ID string "FleetStreet". The client now must check if it's really FleetStreet, that is serving the pipe, i.e. if the ID string matches "FleetStreet". If thats the case, the client sends an ACK to the server. Otherwise the client sends a NAK. In this case, FleetStreet responds with an EOT and ends the session. When FleetStreet receives an ACK, it replies by sending its version number as ASCII text, e.g. "0.88". If the client can only communicate with certain versions of FleetStreet, it may check the version number as well. It then sends back an ACK or NAK as before. If it doesn't ceck the version string, an ACK must be sent to the server. The session startup phase is now finished and FleetStreet waits for the client to send commands. Session startup: Client FleetStreet ENQ ----------------------> "FleetStreet" <---------------------- ACK ----------------------> "0.88" <---------------------- ACK ----------------------> Session startup with error: ENQ ----------------------> "FleetStreet" <---------------------- NAK ----------------------> EOT <---------------------- Command transaction The client sends command to FleetStreet as simple ASCII text. Echo command must end with an ETX character. Example: "SCAN *" Parameters are separated from each other and from the command by single whitespace characters. FleetStreet checks the validity of a command. When a command is not valid, the sequence is sent back. is one of the three characters C, P or S. The meaning of the three characters is: C The command was not recognized by FleetStreet P Parameters are missing or they are invalid S More parameters than expected were specified. When the command is valid, the sequence is sent back. In this case, FleetStreet starts to execute the command. When FleetStreet is finished, the result of the command is sent to the client. When an error occured during execution of the command, the sequence "error text" is sent. "error text" is a description of the error in plain ASCII text. When the command was processed without errors, the sequence "result" is sent. "result" is the desired information, a status report or may be empty as well. After processing a command, another command may be sent to FleetStreet. This may happen as often as necessary, until the end of the session. Schematic description: Client FleetStreet "SCAN *" ----------------------> <---------------------- [Processing] "34 areas" <---------------------- Invalid command: "ABC XYZ" ----------------------> "C" <---------------------- Error during processing: "SCAN *" ----------------------> <---------------------- [Processing] "disk error" <---------------------- End of session After the last command was processed, the session must be stopped. The client sends an EOT to the server. The server responds with an EOT and both end the connection. Schematic description: Client FleetStreet EOT ----------------------> EOT <---------------------- ═══ 8.2. The commands of the pipe server ═══ Currently the following commands are implemented: SCAN ETOSS ═══ 8.2.1. SCAN ═══ SCAN The areas specified are re-scanned. You can specifiy areas with: * All areas Area tag Only this area, e.g. TUB @filename All areas that are specified in the file. The format of the file is the same as the format of ECHOTOSS.LOG, i.e. one area tag per line. ═══ 8.2.2. ETOSS ═══ ETOSS The echotoss.log file is written to disk. If you don't specify parameters, the file is created according to the FleetStreet setup. A parameter can can specified and denotes the file name of the file created as echotoss.log. ═══ LOCK ═══ LOCK The areas specified are locked, i.e. they are no longer used by FleetStreet. When an area is currently used by FleetStreet, the command continues being processed until the area is no longer used. Areas may be specified in the same format as with SCAN. ═══ UNLCK ═══ UNLCK The areas specified are unlocked. Areas may be specified in the same format as with LOCK. ═══ 8.3. FleetCom ═══ FleetStreet comes with a special tool named FleetCom. FleetCom is a client program for the FleetStreet pipe server. Usage of FleetCom: FLEETCOM command [parameters] FleetCom establishes a connection with the pipe server, sends the command and parameters and processes data returned by the server. In most cases FleetCom is sufficient for using the pipe server in FleetStreet. FleetCom returns the following exit codes: 0 OK, no error 1 the pipe could not be opened. This error also occurs when FleetStreet is not running, so it can be ignored in most cases. 2 no command specified 3 FleetStreet doesn't recognize the command 4 error while processing the command, or system error. FleetCom uses the pipe \PIPE\FleetStreetDoor by default. However, a different name may be used as well. It is taken from the environment variable FLEETPIPE. Example: SET FLEETPIPE=\PIPE\AnotherPipe When FleetCom is to use the default name again, delete the variable by using SET FLEETPIPE= Examples for using FleetCom: Rescan areas after Squish has tossed new mesages: SquishP IN -f echotoss.log FleetCom scan @echotoss.log Write Echotoss.Log to scan out message from these areas: FleetCom etoss pack.log SquishP OUT SQUASH -f pack.log ═══ 9. Advanced Topics ═══ The following topics might be interesting after you've get used with FleetStreet: ■ Multiple instances ■ Improving performance ■ Multi-User operation ■ Kludge lines ═══ 9.1. Multiple instances ═══ You can run FleetStreet more than once at a time. Follow these guidelines when doing so: ■ Only the instance that was started first saves its settings. Change settings only within the first instance if you like to keep the changes. ■ Secondary instances can be identified by a [*] in the title bar. ■ You can't run multiple instances of FleetStreet if they're different versions. Also, you can't run a english version and a german version at the same time. In this case the DLLs of the first instance are used for all instances. This is a limitation of OS/2. The behaviour of the secondary instances when running different versions is undefined. ■ Secondary instances don't have a pipe server. ═══ 9.2. Improving performance ═══ The performance of FleetStreet highly depends on two factors: Performance of the Squish MSGAPI and performance of your hard disks. While the MSGAPI lies beyond our influence, changes to the second factor can improve FleetStreet's performance. Some hints in detail: ■ Whenever possible use Squish style areas instead of *.MSG. ■ Regularily pack your Squish style areas using SqPackP. After packing an area, the messages are stored without intervening space in the message base and are numbered contigously. ■ Activate "Don't use API for scanning". ■ Use HPFS. ■ Exclude areas from the area list if you don't read them yourself. Activate "Hide excluded areas". ■ When searching text, let FleetStreet search only in the message headers whenever possible, not in the whole mesage. ═══ 9.3. Multi-User operation ═══ FleetStreet can be configured for operating with more than one user, with some limitations. Here's how to do it: 1. Create a program directory for FleetStreet. Copy the EXE file and all DLLs to into this directory. Include the directory in the LIBPATH in CONFIG.SYS. Reboot if necessary. 2. Create a configuration directory for each user. 3. Create a program object for each user. Specify the full pathname of FLTSTRT.EXE as the program name. Enter the corresponding configuration directory as the working directory. 4. Now you can configure FleetStreet for each user. The configuration directory of a user contains a complete set of INI files. 5. Use different lastread offsets for each user. Limitations: ■ The "read" flag only exists once for each message, i.e. it is the same for all users. ■ The "private" flag isn't treated in a special way. And what about the future? "Real" multi-user features are planned for later versions. Ideas and suggestions are always welcome. ═══ 9.4. Kludge lines ═══ The following kludge lines are generated or recognized by FleetStreet: FMPT TOPT INTL These kludges are generated by FleetStreet according to FTS-0001 Rev. 15 when the generated message is a NetMail message. However, when changing a message, kludges are not rebuilt. Squish re-generates these kludges when exporting the messages. Support for these kludges normally would not be necessary. When reading messages, these kludges are ignored. MSGID When writing messages this kludge is generated according to FTS-0009 Rev. 1. The address component is 4D. When reading in an EchoMail area, MSGID is used for finding out the address of the sender. When MSGID does not contain a FTN address, the origin line is searched for a valid address. REPLY When writing messages, the MSGID kludge of the original message is written as REPLY kludge. PID If you activated using PID in the setup, the PID kludge is generated and only a short tearline is appended to the message. A long tearline is appended if PID is not activated. FleetStreet follows the recommendations of FSC-0046 Rev. 2. REPLYTO When replying to a NetMail with a REPLYTO kludge, the address and username specified there are used as the addressee of the message. In EchoMail areas this kludge is ignored. FleetStreet follows the recommendations of FSC-0035 Rev. 1. REPLYADDR When replying to a NetMail with a REPLYADDR kludge, the address specified there is inserted as a "To:" line at the beginning of the new message. In EchoMail areas this kludge is ignored. FleetStreet follows the recommendations of FSC-0035 Rev. 1. SPLIT When you save a message that is longer than 12 KB, it is split into smaller pieces according to FSC-0047 Rev. 1. There are some deviations: ■ Since the message never was is the message base as a whole, the message number in the SPLIT kludge depends on the current implementation (currently it's the number of the first part of the message). ■ FSC-0047 recommends to strip MSGID in parts 2..n so that dupe checkers don't throw away these parts. FleetStreet however generates a new MSGID for each part which has the same effect. ■ The part number in the SPLIT kludge only has two ciphers, so a maximum of 99 parts is possible. The message length is therefore limited to 1188 KB. ■ When changing a message the new message can only have a maximum length of 15 KB. Splitting the message again would make it impossible for the addressee to join the parts automatically, because the numbering of the parts would be corrupted. ■ The part numbers are added to the end of the subject line instead of to the beginning. Therefore the messages appear in the correct order in the thread list. APPEND REALADDRESS These kludges are preserved when replying. CHARSET/CHRS FleetStreet supports these kludges up to Level 2 according to FSC-0054 Rev. 4. When writing a message, FleetStreet always outputs IBMPC 2. Support for the following kludge lines is planned (in whatever form): AREA FLAGS ACUPDATE ═══ ═══ Message areas that are only defined in FleetStreet, not in the squish configuration file. These areas will not be touched by squish. ═══ ═══ Actually this is not the real number of unread messages. It is just the number of messages after the message last read. ═══ ═══ You can do this in the settings notebook of the area or by clicking on the area with the left mouse button and while holding down the ALT key. You can then edit the description directly. ═══ ═══ open the context menu of the area list by clicking with the right mouse button on free space in the list, either below all areas or above all areas. ═══ ═══ Click on the area using the right mouse button