[feedback-report] ARF
Steve Atkins
steve at word-to-the-wise.com
Sat Jul 12 10:54:16 PDT 2008
On Jul 12, 2008, at 4:45 PM, Jenny Gavin-Wear wrote:
> Hi all,
>
> I have been researching ARF in relation to the AOL FBL.
>
> My situation is that I am a web site developer (Coldfusion) offering
> hosting and email services to my customers. Some of those customers
> are using mail lists.
>
> My problem is that AOL users incorrectly mark mail list emails as
> spam instead of unsubscribing, despite all of the options I have
> made available - such as one click unsubscribe.
>
> So, I need to be able to find the email address of the complainant
> from the AOL ARF report.
You need to embed the information needed to unsubscribe the recipient
in the email you send out. The usual way to do that is to embed some
sort of magic cookie which will allow you to identify both the email
address the mail was sent to and the list the subscription was
associated with (ideally you'd also be able to identify the specific
mailing used). This is supported by every decent mailing list manager
(not least because you need the same data to handle bounces reliably).
>
> I am running two mail servers, (Mdaemon and Smartermail) on Windows
> 2003 Server Standard.
>
> On researching a solution for the Windows platform I find nothing.
> Worse still, these is very little information on the Net about the
> ARF format and on how I might be able to parse it.
If you embed a magic cookie in the mail you send out then it's trivial
to parse - you don't need to do anything more than pull the message/
rfc822 section out of the mail and look for the cookie. 999 times out
of 1000 you don't even need to parse the MIME at all, you can just
treat the ARF report as a block of text and look for the magic cookie
in that block of text.
If you don't include a magic cookie of some sort, and a way of mapping
from that cookie back to the original email address, you're making a
lot of unneeded work for yourself.
Mail::ARF - found here http://wordtothewise.com/resources/arfdeveloper.html
- is a simple perl module that will parse and validate an ARF report
and make the information (including the included original message)
available to a perl script. There's another module in the Email::
space too that'll do similar things. Perl runs just fine on Windows,
and that'd be where I'd start if I needed to do a bespoke ARF handler
on Windows.
>
> I would appreciate any information that can lead me to finding a
> solution. It would be my intention to make any script I might be
> able to create publicly available.
>
> In your development of ARF as a standard, I would like you to
> consider this, and correct me if I am wrong: AOL state that they are
> not prepared to provide the email addresses of complainants and will
> only provide the message ID of the email that generated the
> complaint - from which I can then find the email address. Wouldn't
> it be easier to provide the email address in the ARF report in the
> first place?
This is unrelated to the ARF standard. ARF just describes a simple,
consistent MIME format that the data is embedded in. It's just an AOL
policy thing.
> What could their reasoning be behind their policy?
Scomp reports are sent mechanically. It's possible, and not even that
unusual, for an scomp report to arrive in the mailbox of someone who
was not responsible for the original email being sent, and who does
not have legitimate knowledge of the AOL email address that the
original mail was sent to. AOL does not give their users email
addresses to third parties.
By removing the email address from the report AOL is doing basic due
diligence to reduce the likelihood that their subscribers email
address will be given to a third party who should not have access to
it. Any legitimate bulk emailer[1] will have embedded a cookie in
their outgoing mail such that they, and only they, can identify the
subscriber given access to the cookie.
This is annoying to sysadmins, occasionally, when you're sending mail
from a badly written webapp or mail is from an individual user and you
can't identify the recipient from the scomp report, but that's the
tradeoff for helping to ensure that the AOL users privacy is protected
to some degree, but it doesn't inconvenience any legitimate sender of
bulk email, and they're the recipients of the vast, vast majority of
legitimate scomp reports.
(Note that I've argued vehemently in the past that this behavior from
AOL is Bad and Wrong, but I understand why they do it and their
reasoning is quite sane and fairly compelling, even if I don't always
agree with it :) ).
>
> I am also curious as to why the ARF report cannot be viewed using
> standard email clients, such as MS Outlook. Can someone please
> explain this to me?
>
ARF is a pretty standard MIME format - it uses a multipart/report
format, containing three parts - one text/plain, one message/feedback-
report and one message/rfc822.
Any standard email client should be able to handle that format just
fine. multipart/* is absolutely standard and the only element you need
to read to handle the report is message/rfc822.
I'm pretty sure that Outlook can read ARF format just fine. If it
can't, it's a fairly serious bug. Mail.app renders the text/plain and
message/rfc822 parts inline and makes the message/feedback-report
section - which is only usually of any use in the case of automated
handling of reports - available as a mime attachment.
If you want to test for yourself, send an email message to arf-sample at skylist.com
and you'll get an ARF formated report about it sent to you
immediately - I'd be interested in knowing how Outlook handles that.
Cheers,
Steve
[1] Any legitimate mailer will handle bounces. Any bulk emailer will
be sending enough email, and receiving enough rejections and bounces
that they can't handle bounces by hand. Magic cookie based approaches
such as VERP are the only reliable way to handle bounces mechanically.
(That there are a few ESPs who don't do this, and try and intuit from
the bounce messages what the associated email address might be doesn't
affect the general observation :) ).
More information about the abuse-feedback-report
mailing list