Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

General Questions

General questions about getting started with SilverStripe that don't fit in any of the categories above.

Moderators: martimiz, Sean, biapar, Willr, Ingo, swaiba, simon_w

Silverstripe Bounce Handling


Reply

3 Posts   1095 Views

Avatar
Silverfish

17 May 2012 at 9:39pm (Last edited: 22 May 2012 8:46pm), Community Member, 59 Posts

Hello Everybody,

I am currently looking for a way to record bounces on emails that a Silverstripe system sent.
Google doesn't seem to know too much about this topic (see below for a short summary of the results I found).

So as far as I can see currently the only way to get bounced emails into Silverstripe somehow is to use the Burnbright class together with a pipe on the mail system of the server. Did anyone had some experience with this within the last year(s). Do you think it's worth a shot or should we start right a way with an integration of own code?
I.e. Zend Email class to read & parse an existing mail account, identify bounce mails by message id passed by Silverstripe and parse the body of this mail in some kind of DataObject (i.e. Email_BounceRecord? ;)).

Is there any other known solution I did not find yet?

Thanks a lot for any kind of enlightenment :)
SF.

Currently found approaches for Email Bounce Handling:

1.) Silverstripe API
The Email class constructor collects a parameter called $bounceHandlerURL that sets the email header X-SilverStripeBounceURL to the passed value. That's it.
The Api documentation lists two classes [url=http://api.silverstripe.org/2.4/sapphire/email/Email_BounceHandler.html]Email_bounceHandler[/url] and [url=http://api.silverstripe.org/2.4/sapphire/email/Email_BounceRecord.html]Email_bounceRecords[/url].
I guess these work similar to the burnbright class ad expect a bounce-mail to be piped to the given URL?

2.) Newsletter Module
The latest release of the [url=http://www.silverstripe.org/newsletter-module/]Silverstripe Newsletter Module[/url] [v0.4.0-rc1] seems to create an Email_BounceRecord for every Blacklisted Member. Didn't try but i guess this code will crash due to lack of this class.

3.) Burnbright.co.nz
offers a Solution [url=http://www.burnbright.co.nz/blog/how-to-set-up-email-bounce-handling-using-silverstripe-and-cpanel/]"How to set up email bounce with Silverstripe..."[/url]. The post is from Dec. 2009 and offers a class that handles bounce emails requests triggered by piped mails on the system.

Avatar
Willr

20 May 2012 at 12:04pm Forum Moderator, 5511 Posts

The Api documentation lists two classes Email_bounceHandler and Email_bounceRecords, but actually these classes don't exist within the downloaded sources (version 2.4.7)

Those classes are there :D https://github.com/silverstripe/sapphire/blob/2.4/email/Email.php#L618

Avatar
Silverfish

22 May 2012 at 8:55pm (Last edited: 22 May 2012 8:55pm), Community Member, 59 Posts

Hi Willr,

I fully apologize for this short-sighted statement! :)
I forgot that Sapphire / SilverStripe uses to put several classes within one file and so just searched for filenames.

Do I get the code right, that bounces should be piped to something like http://domain.com/Email_BounceHandler?Email=[text]&Date=yy-mm-dd&Time=hh-mm-ss&Message=BounceFromXy ?

Thx
SF.