I've ported this module to D7 as well as changed it a bit to save more meaningful information in DB about bounce.

Module - https://github.com/hippich/drupal-simplenews-bounce
Patched PHPMailer-BMH library - https://github.com/hippich/PHPMailer-BMH

I would see this as initial version of module. Next logical step would be integration with VBO and adding ability to do Batch Unsubscribe based on results of Bounces report... But in current form it gives at least basic ability to gather bounces and manually remove these.

Comments

weseze’s picture

Could you explain what you've changed in the PHPMailer-BMH library?
We can't just make changes there: it is an external library maintained by someone else...

pavel.karoukin’s picture

weseze, it is not maintained. Last update - 2009-02-02.

Changes included adding few new rules to detect bounces and also change which allows to pass body text into callback action. Now... I think I should do it differently with body - make it last and optional parameter, so it would work with older versions of PHPMailer-BMH.. I probably will do this. Here are all changes - https://github.com/hippich/PHPMailer-BMH/commits/master

Next - I find PHPMailer-BMH library too... inflexible. I would say we should move eventually logic for mail bouncing into drupal module which have settings for adding/removing/importing/exporting rules. This way we can stay on top of all changes mail servers introduce in their bounce responces. But for quick fix just to make it work - current implementation should be fine. =)

I will go ahead and redo both PHPMailer-BMH and simplenews_bounce modules to move $body to the end of callback function and make it optional for compatibility purposes.

pavel.karoukin’s picture

Ok. Some more updates to BMH and simplenews_bounce

https://github.com/hippich/PHPMailer-BMH/commits/master
https://github.com/hippich/drupal-simplenews-bounce/commits/7.x-1.x

Moved body to the end of parameters list, so it should be compatible with older version of PHPMailer-BMH, just body field will be empty in reports. Also added version check of library and warn user if he use old one.

pavel.karoukin’s picture

Hm.. I probably should put report page into Reports menu subtree like version 6.x-2.x...

weseze’s picture

We should really work on a good strategy for PHPMailer-BMH then.
I agree we need to move the functionality into the module, eventually...

My view on this was: first get the module up-and-running and then see how we can remove the PHPMailer-BMH dependecy or improve it.
This way we can hit the market with a functioning module very fast. We would then have some time and probably a bigger community to fall back on to integrate PHPMailer-BMH.

So I would like to work on an "integration" for PHPMailer-BMH seperately because to me this is low priority (the basics already work!) and make a prioirty of actually making the module work in Drupal. Creating views to see what's happening, create functions, settings, ... to automatically remove bounced mails, improve documentation, testing, ...

pavel.karoukin’s picture

Barebone already work. I am using it actually :)

PHPMailer-BMH might be either separate library as it is now, just downloadable from github instead of sourceforge, or we can actually bundle it with module, since it doesn't look it will be updated soon anyway. I believe licenses are compatible for that. I would actually see integrated BMH code as version 2 instead of pushing this into version 1.

As for automatically remove bounced emails - this should be really done through actions/triggers/rules kind of way. And this is not something prevent basic usage of the module (i.e. get list of bounced emails quickly via view, dump thin list into Mass unsubscribe and be done with it)

My IMHOs :)

luksak’s picture

Thank you! I will test it in the next few weeks and report back.

jorisx’s picture

Good work!
Gonna check this with the next mailing!

Drupal rocks :)

weseze’s picture

Is there any more progress/feedback on this?

jorisx’s picture

Tried it, and tried to install it as above
doens't work, and don't get anything at /admin/config/services/simplenews/bounce
no error or anything to report

not sure where to go from here

jorisx’s picture

Maybe http://drupal.org/project/bounce
is a better solution ?

Anyone tried that?

J!

steve.m’s picture

FYI, a -dev version of http://drupal.org/project/Simplenews_BMH is available for D7 now.

Note that it includes automatic removal of bouncing email addresses according to configurable scoring. I've tested it on small sets of bounces and it seems to work, but more thorough community testing would be welcome.