[comp.soft-sys.andrew] messages, eatmail and other miscellany

mckay@ECN.PURDUE.EDU (Dwight D. McKay) (11/17/90)

I'm trying to figure out how one gets mail fed into messages.  I understand
that one method is to run "eatmail".  How?  I've yet to find documentation
describing how you do this.

Also, is there a collected set of hints and how-to's for andrew and in
particular messages?  I'd like to do things like switch off the multi-media
stuff for selected recipients, automatically removed really old mail from
folders, etc, etc.  Some hints and examples would really help!

--Dwight D. McKay, ECN Workstation Software Support
--Phone: 43561, Office: MSEE 104f
--Office hours: Mon, Tues, Wed, Fri 8-11am; Thu 8-10am

nsb@THUMPER.BELLCORE.COM (Nathaniel Borenstein) (11/20/90)

In general, mail gets automatically taken from /usr/spool/mail/xxx, and
burst into separate files for each message.  The separate files are
stored in ~/Mailbox.  From there, they are incorporated into your mail
folders -- by default, they go into your "mali" folder, but a FLAMES
program (.AMS.flames) can direct them elsewhere or respond to them
automatically.)

The "eatmail" program can be used to burst aport /usr/spool/mail format
files into separate files as in a Mailbox directory.  This is not needed
for normal mail delivery, but the separate eatmail program is useful in
certain circumstances (e.g. when your spool file is on another machine,
and you just want to rsh a small program).

In general, however, there are lots of ways to get mail fed into
messages; you'll have to ask a more specific question to get more
information, I'm afraid.

Much of what you're looking for is probably buried in the help files. 
For example, to switch off multimedia for selected recipients, you can
put certain lines in your .AMS_aliases file, e.g.:

$forceformat Bill Cattey <wdc@athena.mit.edu>
$forceformat wdc@athena.mit.edu
$forcetrust @andrew.cmu.edu
$forcetrust @andrew.cmu.edu>

Type "help ms-aliases" for more information.

For purging old messages, check out the CUI "epoch" command, in the CUI
documentation.  For other specific questions, if you can't find it in
the documentation, feel free to ask... -- Nathaniel

howard@THUMPER.BELLCORE.COM (Howard Bussey) (11/20/90)

I run Nathaniel's eatmail program in a particular context:  My mail is
delivered to a general-purpose (and oftimes overloaded) machine, but I
read mail from a variety of workstations.  To do this, I use eatmail to
grab mail from the un*x mailbox and move it to ~/Mailbox.

eatmail is run from the per-use crontab available (at least) on SunOS
4.0.x.  My crontab includes the following entry (but you can use at jobs
or any other method to run eatmail periodically):

1,6,11,16,21,26,31,36,41,46,51,56 * * * * eatmail -l/u/howard/.EatMailLog

The -l/path/to/file parameter is to make eatmail log something when it
grabs some mail.  (If it runs but my mailbox (/usr/spool/mail/howard for
me) is empty, eatmail doesn't change my .EatMailLog file).  I make xbiff
look at my mail log via the following line in my .xinitrc:

xbiff -file /u/howard/.EatMailLog -geometry -1+0 &

Finally, I arrange to have mail collection empty .EatMailLog via the
following line in my preferences file:

*.PersonalMailCollectionCommand: cat /dev/null >/u/howard/.EatMailLog

There may be a race condition between eatmail trying to append a line to
.EatMailLog and the cat command run by messages/cui/vui trying to empty
.EatMailLog, but as this is just a log file, an error either way is
self-correcting and results in either (1) I get mail late; or (2) xbiff
claims I got mail when I have already examined all new mail.  I haven't
run into either situation, so I don't think the potential race condition
is terribly important.

--------------------------------------------------------------
Howard Bussey <howard@thumper.bellcore.com>
Bellcore Room 2P-288/445 South Street/Morristown NJ 07962-1910
voice: +201 829 44 79; fax: +201 984 22 83

Craig_Everhart@TRANSARC.COM (11/20/90)

Excerpts from internet.info-andrew: 16-Nov-90 messages, eatmail and
other.. Dwight D. McKay@ecn.purd (606)

> I'm trying to figure out how one gets mail fed into messages.  I understand
> that one method is to run "eatmail".  How?  I've yet to find documentation
> describing how you do this.

``eatmail'' is only one method.  Messages should find your mail in
/usr/spool/mail/mckay just fine by itself.  If it's not doing that, you
probably need an AndrewSetup file telling it how to do so.  The
DESTDIR/help/setup.help file should explain this.

> Also, is there a collected set of hints and how-to's for andrew and in
> particular messages?  I'd like to do things like switch off the multi-media
> stuff for selected recipients, automatically removed really old mail from
> folders, etc, etc.  Some hints and examples would really help!

Messages (acting alone) can strip off formatting on a per-message
granularity; either a message is sent formatted or unformatted, but the
same way to all recipients.  Your ~/.AMS_aliases file can contain
indications of what kinds of formatting a given recipient needs; I think
that the help file for this is DESTDIR/help/msalses.help.

As for removing old mail from folders (presumably public folders), you
can use the ``epoch'' command in CUI for this.  Check the CUI help files.

		Craig

datri@convex.com (Anthony A. Datri) (11/21/90)

>I run Nathaniel's eatmail program in a particular context:  My mail is
>delivered to a general-purpose (and oftimes overloaded) machine,

Eatmail is indeed a fine program, but it does require ATK on the spool machine,
which isn't available in my case.  So, at first I wrote an eatmail-inspired
program that did the same thing, learning all kinds of disturbing things
about mkstemp in the process.  This I ran by setting the
AMSMailCollectionCommand preference to rsh it, but I found this to be slow
(because of the rsh).  I got a better idea (for me, at least) from someone's
post on another group -- I wrote a [really simple] program that gets run as
a pipe out of my .forward.  It generates a filename in ~/Mailbox by
concatenating its process-id and the time -- in my case, this should be enough
to ensure unqiueness, since we have site-wide aliases with an entry for
each user pointing to his/her home machine.

--

datri@convex.com

nsb@THUMPER.BELLCORE.COM (Nathaniel Borenstein) (11/26/90)

Why does eatmail require ATK on the spool machine?  I think that's
totally incorrect, actually.  It requires a few libraries (libmail,
liberrors, and libutil) but these can all be built without building ATK
at all.  -- Nathaniel

datri@convex.com (Anthony A. Datri) (11/28/90)

>Why does eatmail require ATK on the spool machine?  I think that's
>totally incorrect, actually.  It requires a few libraries (libmail,
>liberrors, and libutil) but these can all be built without building ATK
>at all.  -- Nathaniel

I was considering the above to be part of ATK; forgive me if that wasn't
correct.  Can the above be built without class or any dynamic-linking code?

--

nsb@THUMPER.BELLCORE.COM (Nathaniel Borenstein) (11/29/90)

Excerpts from internet.info-andrew: 27-Nov-90 Re: messages, eatmail and
o.. Anthony A. Datri@ucsd.ed (388)

> >Why does eatmail require ATK on the spool machine?  I think that's
> >totally incorrect, actually.  It requires a few libraries (libmail,
> >liberrors, and libutil) but these can all be built without building ATK
> >at all.  -- Nathaniel

> I was considering the above to be part of ATK; forgive me if that wasn't
> correct.  Can the above be built without class or any dynamic-linking code?

Yes indeed.  I believe all you need to build are the
overhead/{errors,mail,util} trees.  You may need to build config, first,
actually.  But certainly no dynamic-linking stuff should be necessary.  

Craig_Everhart@TRANSARC.COM (11/29/90)

It's pretty simple to make the basic support from Andrew, if you want to
omit ATK.  (That's what we did to get AMDS running at Transarc at
first.)  You can omit these directories under your andrew distribution:
	overhead/index
	overhead/class
	overhead/conv
	overhead/fonts
	overhead/xicons
	overhead/cmenu
	atk
	atkams
	contrib
	(oda, odatrans)
	xmkfontd
	helpindex
	helpaliases

There could, in principle, be an ATK_ENV option in the top-level
system.h that controlled these directories.

We built the rest of Andrew (Andrew minus ATK)  here at Transarc on all
platforms.  I built ATK also for at least some of the platforms; for a
long time the pmaxes were problematic, but are getting better.

		Craig