By El Observador
 Copyright (C) 1995 by El Observador BBS


                 BEATING THE PHONE COMPANY
                              
                              
   Modifying your UUCP login script to transfer batched news
         via an intermediary provider using "rlogin."

 I run a medium size BBS out of Monterey, California and as
 of just a short while ago was looking for a way to provide
 Internet connectivity to my users at a reasonable cost.
 Currently, the only provider in my area is Netcom, but when
 I called them to ask if they would provide me with a UUCP
 feed, the answer was an outright NO.  The only other option
 I had was to find an inexpensive provider out of San Jose, a
 long distance call from Monterey.  The good news is I did
 find a provider in San Jose called a2i Communications which
 offered me both a UUCP feed and an interactive shell account
 for a low monthly fee of twenty dollars.  The bad news is
 that in order to carry the number of USENET newsgroups I
 wanted for my BBS (around 200-300) I was going to have to
 pay approximately four hundred dollars in long distance
 phone charges each month!  There had to be a better way.
 
 The document that follows explains in detail how to
 configure a uucp script to exchange batched mail via the
 unix `rlogin' command.  One of the primary reasons for
 exchanging mail in this manner is that it enables you to
 dial a local Internet provider--who may not offer a uucp
 feed--and `rlogin' to a remote provider that *does* offer a
 uucp feed.  In this way, you will avoid the often horrendous
 long distance phone charges associated with running an
 Internet/Usenet feed for your BBS.
 
 In order to illustrate this process, let us say as an
 example that the only Internet provider in your town with a
 local access number is Netcom (as in my case).
 Unfortunately, Netcom (as previously mentioned) no longer
 offers UUCP feeds, so you are required to establish a feed
 account with another provider outside of your area code or
 local calling area.  As you are no doubt well aware, a full
 UUCP feed (over 8,000 newsgroups) brings in about 55
 megabytes of new messages each and every day.  Even a small
 selection (100-300 conferences) will often require several
 hours to download each night from the provider.  This can
 add up to BIG phone charges each month.  But there is a way
 to avoid this and pay nothing in long distance charges.

 First, you will need to establish a SHELL account with
 Netcom (or other local provider) and then of course a feed
 account with the provider outside your local calling area.
 Now, configure your BBS or network and ensure that your UUCP
 feed is working via the direct dialing of your out-of-town
 provider.  Once you have ironed out all of the bugs and
 idiosyncrasies of running a UUCP feed, you are now ready to
 modify your uucp login script which is accessed by the
 program you are using to dial the provider and to initiate
 the transfer.  Login scripts vary according to the software
 you are using.  The example that follows is a script I wrote
 for PCBoard 15.21's UUXFER program.  NOTE:  It runs on one
 continuous line; however, I have split it over multiple
 lines so that it formats correctly to the page.  In order to
 distinguish clearly the login names and passwords, let's use
 the following examples:  for Netcom, we shall use login name
 `sugar' and password `uncle'; for a2i (the uucp feed) we
 shall use password `87jR2.Q'.  There is no need to specify
 the login for the feed, as we will do that in the rlogin
 batch we will create and store in your Netcom's home
 directory.

  ------------------------------------------------------------------
 | Original uucp script for direct dialing uucp provider           |
 |                                                                 |
 | #Systems file for a2i, created 5/25/95 by EO.                   |
 |                                                                 |
 | a2i f1 f2 f3 f4 g "" ATZ OK \dATDT2939010  CONNECT \c gin:--gin |
 | Uamos word:--word 87jR2.Q                                       |
 |                                                                 |
  ------------------------------------------------------------------

  ------------------------------------------------------------------
 | MODIFIED SCRIPT FOR LOCAL NETCOM NODE                           |
 | #Systems file for a2i, modified 6/09/95 by EO.                  |
 | a2i f1 f2 f3 f4 g "" ATZ OK \dATDT6447850 CONNECT \c gin:--gin  |
 | sugar word:-word uncle }:--} feed word:--word 87jR2.Q           |
  ------------------------------------------------------------------

 Ok, now that we have our script for direct dialing (long
 distance) our provider working, let's study our modified
 `rlogin' script.  First, I have changed the dial-up number
 from the long distance provider to the number for the local
 Netcom node.  Then I changed the login and password to
 reflect the local Netcom account.  Following those changes,
 you will notice the `}' braces.  After UUXFER logs into your
 local Netcom account and signs on with the proper password,
 it needs to be told what to look for next.  The Netcom
 server you logon to--which varies with each call--is always
 enclosed in braces (check the prompt your local provider
 uses and substitute accordingly) so I have told UUXFER that
 when it sees the braces that it should execute the batch
 file called `feed.'  You now will need to call Netcom (or
 local provider) and after logging in, type `pico feed' at
 the main prompt.  This will create an empty text file called
 `feed.'  At this point we will type out the rlogin command
 along with the parameters we will use for logging into the
 feed site.  Substitute the following for your particular
 site:

 rlogin hustle.rahul.net -l Uamos

 Now do a ctrl-x to exit and save the file known as `feed.'
 At the Netcom prompt, type `chmod +x feed' and press enter.
 This will make `feed' executable as a batch file.  Please
 note that you will need to find out the name of the specific
 server your provider uses for UUCP feeds and substitute it
 for the name I used:  hustle.rahul.net.  You will also have
 to ask your provider if he will configure his server to
 allow your incoming rlogin (Rahul of a2i Communications was
 very happy to assist me in my efforts and made all of this
 possible).  He will need your Netcom login name to do this.
 Also notice the rlogin -l switch followed by the UUCP login
 you use with the feed site.  Unfortunately, UUXFER treats
 any switches or other commands as separate commands or
 programs.  Because of this, we have to tell our script to
 execute the batch file known as `feed."

 So, getting back to our script, we see that after UUXFER
 sees the braces, it will run the feed batch file which will
 in turn `rlogin' to the appropriate server with your UUCP
 username.  The next thing that will happen is that you will
 be prompted for a password.  When UUXFER sees `word' it will
 enter your UUCP password.  (Please note that in the modified
 script I have removed the `CONNECT \c' when using rlogin to
 log into the UUCP server.  I have done this because we are
 already logged in thanks to our feed batch file and the use
 of the `-l' parameter with rlogin.  All we need do now is
 have our script enter the UUCP password).

 Once our UUXFER script enters the appropriate UUCP password
 (in this case, 87jR2.Q), you should see the following
 message "Shere=sitename."  The transfer should begin just as
 it would had you dialed in directly.  Please note that the
 throughput will be nearly the same, as the feed server is
 processing the job at the same speed as before.  The good
 news is that you're connected to a local number and
 transferring all of your batched news through Netcom!
 Congratulations if everything works.  With enough
 persistence and perspicacity, you should be able to adapt
 this script to work with nearly any program or environment.


 Addendum:
 In certain instances, the rlogin command may be unreliable.
 The rlogin command traps certain sequences of characters, when it
 sees a dot at the beginning of a line.  If this is the case, you
 may want to experiment with BINARY telnet.  If your provider does
 not support BINARY telnet, you will need to obtain the source code
 and recompile it on your local provider's system.  With any luck your
 UUCP transactions will never include the character sequences trapped
 by rlogin, making this precaution unnecessary.

 You can increase the throughput of your UUCP transfers by
 modifying the 'g' parameter in PCBoard's uucp chat script.  The g
 parameter controls the window and packet size used during the transfer.
 Try changing it to read g65, a setting which works well on my system
 (my transfer rate increased from 600cps to 1600+ cps).  Consult your
 PCBoard manual for more detailed information.