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   1145 Views

Avatar
Silverfish

Community Member, 59 Posts

17 May 2012 at 9:39pm

Edited: 22/05/2012 8:46pm

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

Forum Moderator, 5513 Posts

20 May 2012 at 12:04pm

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

Community Member, 59 Posts

22 May 2012 at 8:55pm

Edited: 22/05/2012 8:55pm

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.