home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
back2roots/padua
/
padua.7z
/
padua
/
uucp
/
uupoll068.lha
/
uupoll.man
< prev
Wrap
Text File
|
1992-08-03
|
34KB
|
714 lines
__
/ // //__)_ / /
(__/(__// (_)(_(_
the UUCP polling server R0.68 92/08/03
(c)Copyright 1991,92 Ralf S. Engelschall, All Rights Reserved.
(c)Copyright 1991,92 Cyvaned Systems, All Rights Reserved.
0 - DISTRIBUTION
This material is neither freeware nor shareware nor public domain.
It's copyrighted because it was developed for own usage only but may be
freely destributed to help the Amiga community as long as no changes are
made in the whole material and no charge is made for the distribution
except for magnetic media, mailing materials and postage.
Using this program implies that you have accepted all licence
statements and/or conditions specified within this document.
1 - DISCLAIMER
THE AUTHOR MAKES NO WARRANTIES, EITHER EXPRESSED OR IMPLIED, WITH
RESPECT TO THE MATERIAL DESCRIBED HEREIN, ITS QUALITY, PERFORMANCE,
MERCHANTABILITY, OR FITNESS FOR ANY PARTICULAR PURPOSE. THIS MATERIAL
IS PROVIDED "AS IS" AND THE ENTIRE RISK AS TO ITS QUALITY AND
PERFORMANCE IS WITH THE USER. IN NO EVENT WILL THE AUTHOR BE LIABLE FOR
ANY GENERAL OR SPECIAL DAMAGES, INCLUDING DIRECT, INDIRECT, INCIDENTAL
OR CONSEQUENTIAL DAMAGES RESULTING FROM THE USE OF THIS PROGRAM
(INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED
INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF
THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS).
2 - RIGHTS RESERVED
The author reserves the right to make changes in the whole material
identified in this puplication without notice and to distribute other
revisions under different licence statements and/or conditions.
3 - NOTE
Please excuse my uneven english, because it's not my nativeálanguage.
But writing this documentation in german would decrease the number of
people who can understand the function of UUPOLL and I hate german
descriptions of international spreaded material because of the
non-technical character of the german language. Thanks in advance!
4 - ABOUT
4.1 SHORT OVERVIEW
- controls the execution of a UUCICO child as the parent part
- checks for correct hostname and polling-time violation
- controls abortion of UUCICO due to a precalculated restriction time
- operates dependendly on status of last session
- operates dependendly on (specific) pending work
- controls dialup retries due to busy line or other UUCICO failures
- controls abortions due to user interupts
- can be disabled through a job control feature for crontab interventions
- can abort a startup due to or break an already running UUCICO process
- can give information about polling times and host status
- can setup your modem before start of a polling session
- can spawn UUCICO with additional options
- can spawn own user command after a (successful) session
- full UUCP logfile support similar to UUCICO
- can run under full runtime debugging with variable debug level
4.2 DETAILED DESCRIPTION
UUPOLL is a polling server written for the UUCICO from the Amiga UUCP
package (V1.15 or later). If you don't know anything about UUCP this
utility won't be for you and you should stop reading here and discard
it. If you have already installed and configured an UUCP package (at
least the transport layer and the main configuration from Amiga UUCP
V1.15D or later is needed) on your system you should be able to use
UUPOLL directly without setups. If not, stop here and configure your
UUCP system first, really!
You will probably ask, why we need a polling server? UUCP's UUCICO
command handles all we need when polling a host, i.e. all transfer
operations in detail. So if you are polling your NewsFeed once a week
(which is actually ok for a leafsite only!), calling UUCICO manually is
simple and works. But if you have many polling operations a day the
handling of UUCICO will actually require nerves of steel because it is a
simple transfer command for UUCP connections only and doesn't provide
great comfort.
Another boring thing to us was that we often need many polling retries
before successfully connecting to heavily loaded hosts with few idle
telco lines. At this situation we had to reenter the UUCICO command
manually for each retry operation while waiting in front of our machines
observing the polling processes. At first we had used a AmigaDOS(tm)
batch script distributed with AmigaUUCP 1.13D to automate the retry
procedure. This worked fine but not very elegant, because it used bad
things like a dummy transfer file to check if UUCICO's last retry was
actually successful.
Another big problem (also not handled by UUCICO or the batch script
mentioned) is that UUCICO doesn't stop when the polling time is over due
to a given time restriction, i.e. the polling time is reserved but
limited by the remote system. One of our remote systems for example
reserves us a polling time of one half hour from four o'clock to half
past four every morning to do all daily transfers. No other host had
the right to poll at this time interval. This has the advantage that
there aren't any retries when connecting because the telco line is
explicitly reserved for us. The "disadvantage" is, that at half past
four another reserved polling time (of another host) starts, which means
that we have actually only the right to use the phoneline up to half
past four and no longer.
At half past four the phoneline have to be given free, otherwise we
will become a great deal of flames from the sysop of the host polling
after us because we had used his reserved time interval. Usually we had
a connection time between 15 and 25 minutes on this polling sequence.
But sometimes there is so many traffic inside our requested newsgroups
that we still transferring data at half past four. At this situation we
had to interrupt UUCICO because our polling time is over. To solve this
problem we had stopped UUCICO via 'break' command started by our
'crontab' at half past four. This worked also fine but only little
elegant.
The next big problem was the fact, that after breaking UUCICO the
remote host will hold not already transferred data until we poll again.
That's ok so no data will be lost. But the really problem is that a lot
of data is waiting for us if we break the next polling session again and
then the next one also and the next one... To solve this we had started
UUCICO at a second time (some hours later) where all host can poll which
don't have a reserved polling-time. So we had the ability to receive
all remaining data from this remote host at this session but we had to
do this manually because if the first connection wasn't breaked the
second one would be redundant and cost phone units only. The only way
to solve this correct and elegant is to know, whether the last polling
session was successful.
You see, these are all problems which can be solved by writing a
intelligent server program for UUCICO which handles _all_ this
situations _automatically without us_. So UUPOLL mushroomed out of my
brian...
5 - REQUIREMENTS
As mentioned above you have to install a UUCP package like AmigaUUCP
from Matt Dillon (V1.15 or later) or compatible. For detail have a look
at the manual pages of _your_ UUCP software. UUPOLL relies on UUCICO
and UUXQT of V1.15D or later only, but you should have a correct package
at all.
6 - INSTALLATION
If you have a already configured UUCP system, installing UUPOLL will
be quite simple: Just copy UUPOLL to the same directory where your
UUCICO stays. Thats important because otherwise UUPOLL wouldn't be able
to fork the UUCICO command. Usually UUPOLL and UUCICO are staying at
UUBIN: or UUCP:C/ where all other UUCP command are. Of course you can
(but why should you?) give UUPOLL another name by renaming it. It acts
in all situations with its AmigaDOS(tm) name.
But be sure that the following things are already configured before
you try to run UUPOLL successful. Otherwise do it now!
You need a correct UULIB:l.sys file, where UUPOLL can extract
informations about the host you want to poll (i.e. if it exists,
baudrate, allowed polling times). This should already exist and
configured correctly because this is also used by SENDMAIL and UUCICO.
For example, have a look at a part of UULIB:l.sys of site CyvaNT2
(angle.muc.sub.org):
:
| # CyvaNT1 (cyvaned.sub.org)
!| cyvaned Any SER: 9600 ATS7=060DP97990 ogin: Uangle sword: XXXXXX
|
| # Alcolix (brumuc.muc.sub.org)
!| brumuc 04:00-04:30,08:00-10:00,12:15-12:45,13:15-15:00,
... 16:15-18:30,19:00-20:30 SER: 9600 ATDP0893544971 in: Uangle rd: XX
!| brumuc 04:15-04:50 SER: 9600 ATDP0893544023 in: Uangle rd: XX
:
As you can see, `angle' has direct connections to hosts `cyvaned' and
`brumuc'. At `cyvaned' there is one phoneline only, `brumuc' has two
phonelines. Notice that UUPOLL supports such multiline entries, too.
Both have many reserved times, so `angle' have to know all these time
intervals where it is allowed to poll each host (these times are given,
not the reserved ones!). UUPOLL checks for these time intervals, so be
careful: Take them up to date! Notice, a bad time-field (the second
field) will produce a bad `host status' ("-i").
If you want to use the `automatic hostname' feature (which is useful,
if you poll only one host or one host the most of the time), i.e. not
specifying one of the "-s" or "-S" option, make sure that UUPOLL can
open a file called UULIB:config where it can find a field named
"DefaultHost". For example, `angle's config-file looks like this:
:
| NodeName angle
| UserName rse
| RealName Ralf S. Engelschall
| Organization Cyvaned Systems
| DomainName .muc.sub.org
!| DefaultNode brumuc.muc.sub.org
| TimeZone CET
| LockDir uuspool:
| MungeCase N
| Debug 0
| Filter ed -sticky
| RFilter ed -sticky
| MailEditor ed -sticky
| NewsEditor ed -sticky
:
UUPOLL strips off domains automatically when extracting the hostname,
setting this field to "brumuc", "brumuc.uucp" or "brumuc.muc.sub.org"
results always in a default hostname of "brumuc".
If you want to use the modem setup function ('-m') make sure, that
UUPOLL can find a correct setup file called UULIB:modemsetup. For
details about the layout of this file see the paragraph below where the
'-m' option is explained.
The only thing which UUPOLL uses and which you need not configure is
the UUCP logfile, called UUSPOOL:logfile. Here, UUPOLL appends (as
UUCICO, UUXQT, etc. do) his logbook-messages. Notice, that UUPOLL
defaults to do no console output. The only way to check what was done
or went wrong is to look at this file (unless the runtime debug is
enabled).
7 - USAGE
7.1 SHORT OVERVIEW
uupoll [-s [System]] [-S [System]] [-r Num] [-d Sec] [-t Min]
[-u Arg] [-m] [-n [UserName]] [-e [Cmnd]] [-E [Cmnd]]
[-p [[+|-]Files]] [-P [[+|-]Bytes]] [-a] [-c [Mode]] [-j [Status]]
[-i] [-I] [-x Num] [-v] [-?]
s poll the specified system u additional uucico arguments
S as 's' but ignore time restriction m setup modem before startup
r number of retries before giving up n notify user if session fails
d seconds of retry delay time e execute after polling session
t minutes of restriction time E as 'e' but execute always
p poll only if pending files i short host status information
P poll only if pending (k)bytes I long host status information
a always poll - ignore success status x number of debuglevel
c check for already spawned uucico v version info
j switch/set job control status ? usage info
7.2 DETAILED DESCRIPTION
[-s [System]] "poll the specified system"
This specifies the system which UUPOLL should poll. Use the UUCP
name, not the logic one, i.e. at `angle' I have to set it to `cyvaned'
instead of `CyvaNT1' and `brumuc' instead of `Alcolix'. If this option
isn't used, UUPOLL extracts the hostname of the field "DefaultHost" in
UULIB:config.
[-S [System]] "as 's' but ignore time restriction"
This specifies also the system which UUPOLL should poll, but with the
addition that this "profanes" the holy situation of restriction time
violation. This is similar to UUCICO's -S option.
The advantage of this option would be that you can use a polling trick
introduced by T.Lotterer (joedust@cyvaned.cyvaned.sub.org). Think about
his situation: He wanted to poll one of his NewsFeeds and waits until
no reserved time is active because he didn't want to steal someone's
reserved time. Now he starts to dialup his NewsFeed but the line was
busy, busy, busy...
The reason why this happens was clear: All other hosts act similar.
The only solution to avoid this situation would be to start polling a
few minutes before all other would do, i.e. starting _before_ the
reserved time would be over. Oh, you think thats not ok, because now we
use someones reserved time? That's right, but no one would disagree
because if someone is still polling at his reserved time, he could not
be interrupted and if he has already finished he has no reason why he
should disagree with us.
So if T.Lotterer wanted to poll his NewsFeed he waits until 30% or
more of the currently active reserved time is over and then started to
dialup his NewsFeed.
This feature is also useful for debugging without having to alter the
l.sys file.
[-r Num] "number of retries before giving up"
This indicates the total number of re(!)tries. Remember that retries
means that the first retry is trial number 2! A retry of zero (the
default) forces UUPOLL to try only once and then give up.
[-d Sec] "seconds of retry delay time"
This indicates the number of seconds which UUPOLL will wait until it
starts a new dial retry. Default is no delay time (0 seconds). This
was originally introduced for special situations to avoid too many dials
which result in a lot of unused telephone units due to a telephone
number change without notice by one of our NewsFeeds.
It also keeps the line a bit idle between retries, allowing remote
sites to log into your local system.
[-t Min] "minutes of restriction time"
If specified with a number not equal zero this sets the number of
minutes after which UUPOLL should terminate UUCICO. This timer starts
immediately after you have started UUPOLL. I call this the 'restriction
time' for the polling session. If this option is left, UUPOLL
calculated the minutes out of the given time intervals found in
UULIB:l.sys.
[-u Arg] "additional UUCICO arguments"
This specifies the additional(!) arguments for the UUCICO call.
UUPOLL starts UUCICO always with "UUCICO -S{hostname}" and will
optionally add this string to the end of that `calling command'. If you
wish no addidtionl args you have to specify `-u' only. The default is
"-7" which indicates that UUCICO should use a 7-Wire-Handshake.
But notice, you have to specify the option argument string in a
special form if you use a seperation blank between UUPOLLs option and
the option argument. You have to write `-u " -X -Y -Z ..."' (notice the
blank character after the first quotation mark!) instead of `-u "-X -Y
-Z ..."'. This is no bug in UUPOLL, its a special case in option
parsing.
[-m] "setup modem before startup"
If specified this indicates UUPOLL to setup your modem according to
the commands found in UULIB:modemsetup before it starts the first UUCICO
process.
This configuration file is the only introduction of UUPOLL, all other
configuration files should already exist. The layout of this file is
similar to NEWSCTL:sys of CNEWS, which specifies the newsgroups
interchanged with each host. Instead of explaining this, please have a
exact look at 'angle' ones.
:
!| default:\
| ATZ,ATE1,ATH0,ATK1,ATL3,ATM2,ATQ0,ATV1,ATX4,\
| ATS0=000,ATS2=043,ATS3=013,ATS4=010,ATS5=008,ATS6=002,ATS7=060,ATS8=002,ATS9=010,\
| ATS10=015,ATS12=050,ATS18=000,ATS25=000,ATS26=000,\
| AT&B0,AT&C1,AT&D2,AT&H1,AT&L0,AT&M0,AT&R2,\
| AT*A0,AT*D0,AT*E1,AT*F3,AT*P0,AT*Q0,AT*S1,AT*E1,AT*U0,\
| AT&W
|
!| cyvaned:\
| AT*E1,AT&W
|
!| brumuc:\
| AT*E0,AT&W
:
ATTENTION! Don't forget the "AT&W" (or your modem equivalent) command
at the end of your AT command sequence. If you forget this, no setup
effect will happen because when UUPOLL closes the serial.device after
its modemsetup the serial.device will drop the DTR (Data Terminal Ready)
signal which has the result that your modem will reset itself to its
last configuration which had exist before the last AT&W command. Use
the third field of UULIB:l.sys for setups which should not remain after
the polling session and use UUPOLL's UULIB:modemsetup for permanent
setups only.
Notice, if no entry for the current host can be found in
UULIB:modemsetup, the modemsetup function uses the commands given at the
fake-hostentry named "default".
BE CAREFUL! Use the ModemSetup with care. No, it has no serious bugs
in code, but has a lot of problems with the other commands of the UUCP
package, i.e. UUCICO and GETTY. The first problem occurs if you try to
poll with modemsetup while GETTY is running. GETTY locks the
serial.device explicitly, so UUPOLL wouldn't be able to open the
serial.device. The second problem comes up, if you try to run UUPOLL
with the LOCKSERIAL command. This works fine for UUPOLL, i.e. it now
could setup your modem, but UUCICO will hang forever because it tries to
lock the serial.device too and comes never back... The only solution is
either to kill GETTY when using the modemsetup function of UUPOLL or to
leave this feature unused.
[-n [UserName]] "notify user if session fails"
If you specify this option and the polling session fails due to a
restriction timeout or maximal number of retries the given user (or per
default `postmaster') will be notified about this. The user will
receive a message like the following:
| From UUPOLL-DAEMON Fri, 12 Jun 1992 22:23:40 +0200
| Return-Path: <UUPOLL-DAEMON>
| Received: by angle.muc.sub.org (\/<>\/ SmailAmiga 1.02j21)
| id <m0lwK20-00002Qc>; Fri, 12 Jun 1992 22:23:40 +0200
| Message-Id: <m0lwK20-00002Qc@angle.muc.sub.org>
| Date: Fri, 12 Jun 1992 22:23:40 +0200
| From: UUPOLL-DAEMON@angle.muc.sub.org (UUCP Admin Subsystem)
| To: postmaster
| Subject: brumuc: polling failed
| X-Status: OR
|
| [autogenerated message]
|
| Local Time : Fri Jun 12 22:23:36 1992
| Remote Host : brumuc
| Status : polling failed
|
| --
| UUPOLL-DAEMON
[-e [Cmnd]] "execute after polling session"
This specifies the user command which will be executed by UUPOLL after
a polling session. The default is the UUXQT command. It will be
executed after..
.. a successful UUCICO session
.. UUPOLL was aborted due to a restriction timeout
.. UUPOLL was aborted by the user or by a UUCICO break/software error
To disable the execution of a user command specify `-e' only.
[-E [Cmnd]] "as 'e' but execute always"
This is the same as 'e' but with the only difference that this will
force UUPOLL to execute the user command _always_, even if it terminates
due to a internal error or any other conditions. To force the default
user command to be executed always, specify `-E' - not `-E ""' because
this will indicate `no user command'.
[-p [[+|-]Files]] "poll only if pending files"
This option indicates UUPOLL to poll only if there is pending work,
i.e. number of spooled files, for the host. Per default (or if the
option `-p0' is given) UUPOLL does no such check. If `-p{N}' is
specified UUPOLL polls according to the following rules:
N>0 : poll only if more or equal to N pending files
N=0 : poll independend of any pending files (same as not specifing
this option)
N<0 : poll only if less or equal to N pending files
The default (if '-p' is specified without an argument) is one or more
pending files (so, '-p' is equal to '-p1'). This option was introduced
for `DEMAND' pollings.
[-P [[+|-]Bytes]] poll only if pending (k)bytes
This option indicates UUPOLL to poll only if there is pending work,
i.e. number of spooled kilo bytes, for the host. Per default (or if
the option `-P0' is given) UUPOLL does no such check. If `-P{N}' is
specified UUPOLL polls according to the following rules:
N>0 : poll only if more or equal to N KBytes data
N=0 : poll independend of any pending data (same as not specifing
this option)
N<0 : poll only if less or equal to N KBytes data
The default (if '-P' is specified without an argument) is one or more
pending files (so, '-P' is equal to '-P10'). This option was introduced
for `DEMAND' pollings. Notice, this option has higher priority as '-p'!
[-a] "always poll - ignore last status"
This forces UUPOLL to start the polling procedure independend of its
status of the last session, i.e. whether the last session was
successful or not.
UUPOLL sets a enviroment variable (`UUPOLL.STAT.{hostname}') for each
host automatically after a polling session to `SUCCESSFUL' or `FAILED'
according to the results of the polling procedure. At startup UUPOLL
checks for this variable and does nothing if its status is already
`SUCCESSFUL'. But if you specify this option UUPOLL treats it always as
`FAILED' and starts the polling procedure even if the last one was
already successful. This should be used in the following context with a
`crontab', e.g. here is `angle's crontab:
:
| 05 03 * * * trimsys
| 10 03 28 * * autoinpaths angle mailto
... pathsurvey@stasys.sta.sub.org
| 10 03 * * * uppub
| 15 03 * * * bms batch
| 20 03 * * * batchsite cyvaned
| 25 03 * * * gettyctl run on
| 40 03 * * * uupoll -p -c0 -d120 -r3 -t20 -Scyvaned
... -u " -7 -p3"
| 45 03 * * * gettyctl off shut
| 50 03 * * * batchsite brumuc
!| 00 04 * * * uupoll -a -c1 -d120 -r6 -t30 -Sbrumuc
... -u " -7 -p3" -e poll.workup
| 55 04 * * * uumsg.daily
| 59 04 * * * shutdown
:
:
!| 00 08 * * * uupoll -c1 -d120 -r6 -t60 -Sbrumuc
| 59 08 * * * shutdown
:
As you can see, the cron-daemon starts a polling session every morning
at four o'clock to connect to host `brumuc'. As mentioned above,
`angle' has a reserved polling time at host `brumuc' from four to half
past four. So UUPOLL is started with a restriction time of 30 minutes
(of course this could be left, then UUPOLL calculates these 30 minutes
out of the UULIB:l.sys entry for host `brumuc).
UUPOLL now connects to `brumuc' with a maximum of 30 minutes. If
there would be more data than `angle' could get in this time interval,
UUPOLL breaks at half past four. Then the status of this polling
session is set to `FAILED' which lets the second UUPOLL (started at
eight o'clock) to go on with the transmission. If the first sesssion
would be successful the second UUPOLL does nothing!
[-c [Mode]] "check for already spawned UUCICO"
This option was introduced for special situations. It tells UUPOLL to
check for a running UUCICO process at startup. Have a look again at my
crontab:
:
| 25 03 * * * gettyctl run on
| 40 03 * * * uupoll -p -c0 -d120 -r3 -t20 -Scyvaned
... -u " -7 -p3"
| 45 03 * * * gettyctl off shut
:
First, the background: the connection `angle' <-> `cyvaned' is a
daily DEMAND connection, i.e. if one of these hosts have pending work,
it polls the other. To implement this connection we could give
`cyvaned' a time from 03:00-03:30 to poll `angle' and a time from
03:30-04:00 for `angle' to poll `cyvaned'. Then at each host UUPOLL is
started with the `-p' option (see above) to poll only if pending work.
This would work fine, because if `cyvaned' had work it polls angle
first, then `angle' will not poll back even if there _was_ work, but
will poll if `cyvaned' hadn't polled.
The only "problem" is, that we had to reserve two(!) polling times!
To solve this "problem", we can use the `-c0' option from UUPOLL:
We reserve only one polling time from 03:30 for both polling
directions. As you can see from 03:25-03:45 the GETTY command runs to
observe the phoneline and to answer incoming calls. This is done
because `cyvaned' tries always to start a connection first. So
`cyvaned' has 15 (actually 20 but it start dialing `angle' at 03:30!)
minutes to dial `angle'. If `cyvaned' didn't poll `angle' (due to no
pending work) and `angle' has pending work, `angle' polls `cyvaned' ten
minutes after the polling time interval starts (i.e. 03:40). If
`cyvaned' polls `angle', `angle' (i.e. UUPOLL on `angle') had to now at
03:40 if it should poll back or not.
The `-p' option does a goof work only, if the connection would be less
than 10 minutes (i.e. the connection is finished at 03:40). If the
connection still in process, this doesn't work. But the '-c0' option
tells UUPOLL to abort immediately after startup if there is still a
connection active (i.e. a still running UUCICO process).
Another feature is `-c1': This tells UUPOLL to break a UUCICO process
which is still active at UUPOLL startup. This is useful when you want
your system to poll out even if there is still a active incoming polling
process (i.e. a host is still polling your system).
[-j [Status]] "switch/set job control status"
UUPOLL can be disabled via this option, i.e. you can forbid UUPOLL to
do anything (except host status) until you permit it again. `-j'
switches the status from `disabled' to `enabled' or vice versa. `-j0'
disables, `-j1' enables UUPOLL. UUPOLL uses the enviroment variable
UUPOLL.JOBCTL to store the status of this flag.
This option was introduced for crontab interventions.
[-i [Mode]] "current host status information"
This option tells UUPOLL not to poll actually but to give you the
current host status. This function can be used in conjunction with `-s'
to display a particular host status. You can specify an argument to
this option: "0" for short host status (without the 72 hour chart) and
"1" for long hoststatus. Specifing no argument to `-i' acts like `-i0',
i.e. the short hoststatus is displayed.
The short host status will look like the following:
| UUPoll Host Status on angle Sat Jun 06 20:24:28 1992
|
| remote host : brumuc
| last polling : failed
|
| ACTIVE polling time intervall [#] NEXT polling time intervall
| from Sat/19:00 to Sat/20:30 from Sun/04:00 to Sun/04:50
| total time 01:30, remaining 00:06 total time 00:50, in 07:36
The long host status will look like the following:
| UUPoll Host Status on angle Sat Jun 0 ...
|
| remote host : brumuc [|] ...
| last polling : failed [.]
| ...
| 55 ||...||.||.#............||...||.||.|............||...||.|
| 50 ||...||.||.#............||...||.||.|............||...||.| ...
| 45 ||...||.||.#........|...||...||.||.|........|...||...||.|
| 40 ||..|||.||.#........|...||..|||.||.|........|...||..|||.| ...
| 35 ||..|||.||.#........|...||..|||.||.|........|...||..|||.|
| 30 ||..|||.||.#........|...||..|||.||.|........|...||..|||.| ...
| 25 ||..|||.|||#X.......|...||..|||.|||||.......|...||..|||.|
| 20 ||..|||.|||##.......|...||..|||.|||||.......|...||..|||.| ...
| 15 ||..|||.|||##.......|...||..|||.|||||.......|...||..|||.|
| 10 ||....|..||##.......|...||....|..||||.......|...||....|.. ...
| 05 ||....|..||##.......|...||....|..||||.......|...||....|..
| 00 ||....|..||##.......|...||....|..||||.......|...||....|.. ...
| ^
| 890123456789012301234567890123456789012301234567890123456 ...
| 1 2 Sun 1 2 Mon 1
| ...
| ACTIVE polling time intervall [#] NEXT polling time inter
| from Sat/19:00 to Sat/20:30 from Sun/04:00 to Sun/0 ...
| total time 01:30, remaining 00:05 total time 00:50, in 07
As you can see this will give you a full overview of all essential
polling information. You will get
- the local time (upper right hand corner)
- the remote host and its last polling status
- a 72 hour polling time chart (hours on x-axis, minutes on y-axis)
- information about the time interval which is currently active
- information about the next permitted time interval
Look a while at this output to understand it and you will love it!
[-x Num] "number of debuglevel"
Because UUPOLL does no console output (except polling time violation
message or host status) until you set the Runtime-Debugging you can
specify the debuglevel (0-9) with this option. A level of zero means no
debugging info, a level of nine means full debug output to the console.
[-v] "version info"
[-?] "usage info"
Specify one of these options to let UUPOLL display either the version
page or the usage page to the console.
8 - EXAMPLES
$ uupoll
This is the simplest way to use UUPOLL. It will extract the hostname
of UULIB:config, does no retries and delays, calculates its restriction
timeout to the current active time situation, spawns UUCICO via 'UUCICO
-s{defaulthost} -7', does no modem setup, polls only if the last polling
has failed and gives no console output.
$ uupoll -i -scyvaned
This will display the host status for `cyvaned'. No polling is
actually done.
$ uupoll -a -r10 -scyvaned
This will poll host `cyvaned', ignore the current host status to and
do a maximum of 10 retries if it couldn't connect.
$ uupoll -a -p -Sbrumuc
Now UUPOLL would always poll host `brumuc', even if there is a
reserved time currently active (`-S') or if the last status was
successful (`-a'), but not if there is no pending work for this site.
$ uupoll -a -r10 -p3 -d120 -t30 -scyvaned -e poll.workup
Now UUPOLL would poll host `cyvaned' idependently of the last session,
but only if at least three command files are waiting for `cyvaned' in
the spool directory. UUPOLL has thirty minutes to operate, should do a
maxium of ten retries and waits two minutes between each retry. After
completing the polling session successful UUPOLL should execute the
script file `poll.workup' (script bit set!).
9 - REPORTS
If you have any questions, incitements, comments, criticisms or bug
reports, please contact me via email and let me know about it!
Ralf S. Engelschall
rse@angle.sub.org