InterMail Software Inc. InterMail Demo Manual - Jun 29 1994 ===================================================================== Copyright 1992-1994 InterMail Software Inc. All rights reserved. Written by Bill Cassidy, 1:249/1 and Patrik Bertilsson, 1:369/102. This short manual is a quick guide to help you through the basic installation of the demo version of InterMail. It will not however be sufficient for you to learn everything about InterMail and make a perfect setup. To do that, you will need the 450 page softcover bound manual which you will receive when you purchase InterMail. The manual for our echomail tosser InterEcho is not ready yet. Please read README.1ST for info about other files. Table of Contents ----------------- 1. Installation 2. The Internal SIO driver 3. Using X00 4. BBS 5. Multi-Line 6. Dial Commands 7. Routing 8. The Nodelist Control Table 9. Semaphore files 10. Command Line Switches (Ringmaster) 11. Where to Get Help Installation ------------ Expand this file package into a temporary directory, for example \TEMP. Change to your \TEMP directory and then run INSTALL.EXE. The Installation Program will ask a few questions about you which you simply fill in. You will be presented with a list of modems, from which you choose your own or a similar modem. If you later find that the chosen modem is not working perfectly, you may choose another one and do this over again, as many times as necessary. You can later customize the modem settings as well to suit your own purposes. The last screen in the Installation Program will provide you with the default directories that you would like InterMail to use. A small nodelist IMLIST.* will be unarchived to the \IM\NODELIST directory. If you would like to use the FidoNet nodelist, you may later copy the NODELIST.* file to \IM\NODELIST. Use the program XLAXDIFF for the NODEDIFF.A* difference files. XLAXDIFF is not bundled with InterMail. The Internal Serial Driver -------------------------- InterMail will primarily use its own internal routines for handling the serial port. The internal routines provide full support for the FIFOs of the buffered 16550A UART. They are highly optimized and will usually prove slightly more efficient than an external FOSSIL driver. If you start IM.EXE without first having installed a FOSSIL, InterMail will use its internal serial driver. If you start a FOSSIL, like X00, before IM.EXE, InterMail will not use the internal driver, unless you force it to with the /NF (No Fossil) command line option. Example: im /nf In some cases it may be desirable to use an external FOSSIL driver. Some multitasking environments like Windows, may mask the registers of the UART chip, so that InterMail cannot correctly identify the chip or enable the FIFOs. The internal serial routines will only work on a standard port 1 and a standard port 2. If you would like to use other serial ports, you will need to use X00. DESQview users may also find that only one serial port will work with the internal serial routine. Using X00 --------- X00 is an external FOSSIL driver that can be loaded via CONFIG.SYS or IMRUN.BAT, the batch file that Install creates for running InterMail. Example from CONFIG.SYS: device=c:\im\x00.sys e b,0,38400 t=512 r=1024 The above installs X00 on serial port 1, eliminates X00's opening screen, locks the com port at 38400 bps, sets the transmit buffer to 512 bytes and the receive buffer to 1024 bytes. Example from IMRUN.BAT: x00.exe e b,1,2400 The above installs X00 as a TSR on serial port 2, eliminates X00's opening screen and locks the com port at 2400 bps. If you have trouble with X00, you may use XU S to see the status of your ports. BBS --- InterMail can start your BBS program. If an incoming call is a human using a terminal program, IM.EXE can create a DOBBS.BAT and then exit to IMRUN.BAT with a specific errorlevel. The IMRUN.BAT will then start the DOBBS.BAT which in its turn starts the EXEBBS.BAT file, which finally starts your BBS software. When the caller is finished, the BBS program terminates and your EXEBBS.BAT starts the IMRUN.BAT file, which starts the mailer again. In IMSETUP.EXE, type in which errorlevel IM.EXE should exit with, in Modem -> Advanced setup -> Connect strings -> BBSexit # Connect Message Speed EC BBSexit Terminate ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ 1 CONNECT| 300 N 99 0 2 CONNECT 1200| 1200 N 99 0 3 CONNECT 1200/ 1200 Y 99 0 4 CONNECT 1275 1200 N 99 0 5 CONNECT 7512 1200 N 99 0 6 CONNECT 2400| 2400 N 99 0 7 CONNECT 2400/ 2400 Y 99 0 8 CONNECT 4800 4800 Y 99 0 9 CONNECT 7200 7200 Y 99 0 10 CONNECT 9600 9600 Y 99 0 11 CONNECT 12000 12000 Y 99 0 12 CONNECT 14400 14400 Y 99 0 13 CONNECT 16800 16800 Y 99 0 14 CONNECT 19200 19200 Y 99 0 15 CONNECT 21600 21600 Y 99 0 16 CONNECT 24000 24000 Y 99 0 17 CONNECT 26400 26400 Y 99 0 18 CONNECT 28800 28800 Y 99 0 19 CONNECT 38400 38400 Y 99 0 Set Mailer -> Errorlevel -> Create BAT.file = Yes Set Mailer -> Miscellaneous -> Mail-only (no BBS) = No Set Mailer -> Miscellaneous -> BBS software name Set Manager -> Events -> Edit -> Behavior -> Allow users ... = Yes Make sure your IMRUN.BAT looks similar to this: :loop cd \im im.exe /#1 /nf if errorlevel 99 dobbs if errorlevel 50 goto InterEcho if errorlevel 10 exit if errorlevel 8 exit if errorlevel 4 goto fatal if errorlevel 3 goto dspace if errorlevel 1 goto fatal goto loop The DOBBS.BAT is created by InterMail to start the EXEBBS.BAT with these parameters: %1 = Connect speed, not locked port speed. %2 = Communication port number. %3 = Minutes to the next event that doesn't allow BBS calls. %4 = Reminder of connect message from modem, e.g. ARQ, MNP etc. %5 = Mailer server number. The hardest part is the EXEBBS.BAT file. It will be started from \IM, start your BBS program, use the %1, %2, %3, %4, %5 variables and finally start the IMRUN.BAT. This is a very short example: cd \bbsdir mybbs -b%1%4 -p%2 -T%3 %5 cd \im imrun Multi-Line ---------- You may use up to 4 phone lines in this demo version. Each line needs a running copy of IM.EXE. This means that you need a multi-tasking environment like DESQview, OS/2 or Windows, but you may also use a LAN (Local Area Network). Make sure you load SHARE.EXE on all PC's. If you plan to use InterMail on a LAN, we suggest you use the same drive letter on all work stations for logon to the drive where InterMail is installed, for example drive I:. On the PC where the drive is located physically, you may use the DOS SUBST program, for example: subst I: C:\ Wherever you look in your LAN, InterMail is always on drive I. In the IMSETUP program, you may change all paths to drive I. There are several different ways to setup InterMail as a multi-line system, depending on the result you want. The easiest way to add an extra phone line is to do this: In the IMSETUP.EXE: 1. Global -> Mail Server ID#, enter "2". 2. Global -> Filenames, enter a unique packets directory and a unique log file, for example I:\LOG\IMLOG.002. 3. Modem -> Modem Selection, choose modem. 4. Modem -> Advanced setup -> Hardware, set the port, speed etc. Create \IM\NODE1 and \IM\NODE2. Rename IMRUN.BAT to IMRUN01.BAT Copy IMRUN01.BAT to IMRUN02.BAT Edit IMRUN01.BAT: and IMRUN02.BAT :loop :loop cd \im\node1 cd \im\node2 im.exe /#1 /nf im.exe /#2 /nf Copy \IM\EXEBBS.BAT to \IM\NODE1\EXEBBS.BAT Copy \IM\EXEBBS.BAT to \IM\NODE2\EXEBBS.BAT Delete \IM\EXEBBS.BAT Edit \IM\NODE1\EXEBBS.BAT so it starts the proper BBS node. You should now be able to run both mailers at the same time. They will all share the nodelist, netmail area, message base, and *.exe files. The extra cost in hard drive space is less than 50 kb per phone line. They will use identical addresses (AKAs) and colours, but you may have unique routing (ROUTEIM.002), dial commands (DIALCTL.002) and event configs. If you want different AKA's on another mail server, then you should use different FD.SYS files. Copy FD.SYS to \IM\NODE2, \IM\NODE3 etc. Change the environment variable IM to the path for FD.SYS. Example: Set IM=I:\IM for the mailer #1 Set IM=I:\IM\NODE2 for the mailer #2 Set IM=I:\IM\NODE3 for the mailer #3 When you start IMSETUP, make sure you have the right path. It is easy to accidentally change to the wrong mail server. You can still share the nodelist, message base, *.exe, events, routing etc if you like, but you can also for example choose to have only the nodelist, *.exe and semaphore directories as common. Dial Commands ------------- A sample DIALCTL.001 for a US Robotics HST Dual Standard on Mail Server #1 might look like this: V32 ATB0| HST ATB1&K3| H14 ATB1&K3| H16 ATB1&K3| 1:249/119 AT&K0&M0&N3| 1:249/120 AT&K0&M0&N3| The last two are 2400 baud nodes and it's sometimes helpful to force 2400 baud connects with no compression or error correction when using an HST or a Dual Standard. Since InterMail works with all nodelist flags, be sure you have entries for the HST, H14 and H16 flags if you wish to initiate an HST/HST connection whenever possible. Routing ------- The first mailer server uses ROUTE.IM, the second ROUTEIM.002, etc. If you have previously been using FrontDoor, change the "*" wildcards to the word "All" in your routing file and don't use the DIRECT routing command as it is not supported by InterMail. Example of ROUTE.IM for someone in Zone 1, Net 249: ;---------------------------------------------------------------- ; InterMail Routing File - Node 1 Last update: 21 May ;---------------------------------------------------------------- ; ; GLOBAL ROUTING SECTION ; These routings happen during all schedules unless redefined ; within an individual schedule block. ; forward-to MyNet/all ; Who we'll accept forwarding of netmail to forward-for 1:369/102 ; Who we'll allow forwarding of netmail for files-to MyNet/all ; Who we'll send files to through our system route-files 1:249/100 ; Specific routing of files to node 249/100 101 102 ; ; Route netmail to my Hub - all mail goes to the Hub except nodes ; listed in the no-route statement below. The hold statement may ; be used with all nodelist flags and within each schedule block. ; InterMail uses the wildcards "MyNet/All" and "All" in all routing. ; route-to 1:249/1 1:All 2:All 3:All 4:All 5:All 6:All no-route 1:249/101 106 114 1:369/102 route-to 1:369/102 1:369/all hold 1:249/106 H14 H16 ZYX !CM 1:369/102 ; ; SCHEDULES ; Schedule @ All ; Default ; Schedule A H16 ; Only H16 Nodes will qualify for mail. deny MyNet/All unhold H16 ; Schedule P All ; Unhold mail (if any) and poll the Hub unhold 1:249/1 poll 1:249/1 ; Schedule Z All ; Zone Mail hour // Hold everything hold all ; end of file Nodelist Control Table ---------------------- The nodelist Control Table has several important functions. The file is named FDNODE.CTL and can be edited in the Nodelist Manager or by any ASCII editor. If a file named NODELIST with a numerical extension, e.g. NODELIST.004 or NODELIST.144, exists in \IM\NODELIST, it will be used when you compile the nodelist with IMNC /C or F9 in IMNC.EXE If several files with different extensions exist, the Nodelist Manager will pick the one with the highest number. The PVTLIST statement allows additional nodelists to be added so that you can participate in more than one network. Any nodelist that doesn't follow the NODELIST.### naming convention can be included with the PVTLIST command, for example: PvtList imlist.* If no path is included in the name, the Nodelist Manager will assume that the file is in the nodelist directory specified in IMSetup. In order for InterMail to be able to use a centrally distributed nodelist, the phone numbers in the nodelist have to follow the same format everywhere. This format includs country code and area code, but not the extra digit that is used in many countries to dial a long-distance call. For example: A number in the 613 area code in Canada might look like this in the nodelist: 1-613-555-5555. To dial the same number locally, you would dial 555-5555. If you were within the 613 area, and this was not a local call for you, you would dial 1-555-5555. The same number dialed from any place in North America outside the 613 area would be dialed exactly as it appears in the nodelist. To handle the phone number translation, InterMail uses a dialing table in the Control file. The table starts with the word DIAL and ends with the word END. When you install InterMail, this table is created automatically so that it will handle most calls from your area code, but you may wish to improve on it to handle non-local calls within your area code. The original table may look like this: DIAL / 011/# 1-613-555- 1-555 ; long distance within the 613 area 1-613- ; local calls 1- 1- ; within the U.S. and Canada END The format for the rest of the table is that you first specify the part of a phone number that you want to translate and then what you wish to replace it with. In the example, 1-613-555- would be abbreviated to 1-555-. If part of a number should be deleted, the second parameter on the line can be left empty. The example table could be improved by adding exchanges in the 613 area code which are not local calls wherever InterMail is located. 1-613-444- 1-444- 1-613-777- 1-777- NOTE: A change in the dialing table requires that you recompile the nodelist before it can take effect. The cost table is used to inform InterMail of the cost per minute for each area it is likely to dial. The table starts with the word COST and ends with the word END. The format is similar to that of the dialing table: COST 65 350 1-613- 0 ; local call 1-212- 45 ; New York 44- 110 ; United Kingdom 46- 125 ; Sweden END The COST command takes two parameters: the default national cost and the default international cost. The format of the rest of the list is simple. First enter the beginning of a phone number (country code and area code, where applicable) and then the highest daytime cost per minute of calling it. Semaphore files --------------- A feature in InterMail exists where you can force the mailer to drop to your IMRUN.BAT file with a specified errorlevel, and can be useful in multi-node BBS setups, effectively enabling one BBS task to communicate with another Mail Server. (This also works over a LAN, assuming the semaphore directories are identical). To cause this exit with your specified errorlevel, simply make a file called IMEXIT##.??? in your semaphore directory, where ## is the mail server number and ??? is the errorlevel you would like the mailer to exit with. IMEXIT00.??? will tell ALL InterMail tasks using that semaphore directory to exit with that errorlevel. DOS command: REM > C:\IM\SEMA\IMEXIT01.249 would cause Mail Server #1 to exit with errorlevel 249. The IMSLEEP.NOW will temporarily put all Mailers to sleep, making them suspend all activites and release the nodelist files. The IMSLEEP.NOW is created by the IMNC and the FREENODE. The IMSLEEP.NOW may be removed by FREENODE /U (Undo). This feature is very usefull for nodelist updates in a multiline system. Command Line Switches --------------------- InterMail can also use a number of command line switches which are added to your IMRUN.BAT. Some of the switches that are available with InterMail are: /#[mail server #] Load the Mailer as a specific mail server. /BSY:[path] Enable support for Squish style *.BSY files. /L:[password] Loads the Mailer with a keyboard password. /NF No Fossil. Use InterMail's built-in SIO driver. /RDBG Routing debug mode. /TIME Display time stamp for messages on screen. /NOUNPACK Prevents the Mailer from unpacking any mail. /RM1 RingMaster or "distinctive ringing" support. InterMail can detect phone number 1 and 2 if invoked with the parameters /rm1 or /rm2. /ZMAX:[block size] Set maximum block size for Zmodem. Use 32, 64, 128, 256, 512, 1024, 2048 or 4096. Use if you often get bad phone lines. To setup Mail Server #1 with the built-in SIO driver and Squish type *.BSY file support, you would need the following in your IMRUN.BAT: im /#1 /nf /bsy:c:\im\out.sq Where to get help ----------------- For information and tips about using InterMail, you can link up to the international FidoNet INTERMAIL echo. The echo is available from your NEC or Hub and participants in the echo will be glad to offer suggestions and hints on how to get the most out of your new InterMail package. All brands and product names are trademarks or registered trademarks of their respective holders. If you have any questions, please do not hesitate to contact us. InterMail Software Inc. Voice 1-305-436-1587 10620 Washington Street #101 Fax 1-305-436-5587 Hollywood, FL 33025-3552 BBS 1-305-436-1884 USA Fido 1:369/102 InterMailNet 211:211/0