Bounce score not updated

Hi,

I’ve followed your guide on migrating to mailgun but I’m having some issues with the bounce score - it’s not getting updated when email sending fails.
I can see the bounces in mailgun, but when checking the email in my discourse instance, the bounce score is 0.

Are there any extra settings I might have missed for propagating the responses back to the forum?

Thanks!

2 Likes

That’s because mailgun is overwriting our VERP and is the only one to receive the bounce notification. The only solution is to add support for their bounces webhook.

2 Likes

@zogstrip I see.
Quickly checking the docs I’ve seen this

You can specify a webhook URL in the ‘Webhooks’ tab of your Control Panel. If you do, every time a message experiences a hard bounce, your URL will be invoked with the following parameters

Would you have an example of an url I should provide as an webhook?

Much appreciated!

*edit: Just realised that “The only solution is to add support for their bounces webhook” means that there is no url yet :smiley:. Should I raise a feature request?

1 Like

I’m doing some research to figure out how easy (or hard) it would be to do it for the most popular mail services out there :wink:

4 Likes

@zogstrip any news? :slight_smile:

1 Like

Forgot to update this topic, but already added support for mailgun

https://github.com/discourse/discourse/commit/116efffdaad04ca4357fffa827ef236f93454378

Others are coming :wink:

6 Likes

Sendgrid is now in :wink:

https://github.com/discourse/discourse/commit/9704603fab07052c06b3f8e47b13ea7fa7a9ed1e

5 Likes

Mailjet is now in :mailbox_closed:

https://github.com/discourse/discourse/commit/fe595f1653d4441cf4504615c76a04cbcb6c00e9

5 Likes

I’ve set up bounce handling through VERP on Amazon SES. Bounces are detected properly, but users’ bounce scores don’t get updated past ‘2’. Here’s an example of a user who has had numerous bounces:

I’m using the system default bounce settings:

I’d expect him to have a bounce score of at least 10 (he has far more bounces), yet in his profile he is set to ‘2’:

Do I misunderstand how this works, or did I misconfigure something? My expectation was that Discourse would stop emailing him after a few bounces.

On a related question, I’m not entirely clear what the date in the bounce score field means: I suppose it’s his ‘reset date’?

2 Likes

Maybe @zogstrip could comment.

1 Like

Related: I’m also still trying to understand when a user will be deactivated:

We only update the bounce score once per day to prevent people with a full mailbox to be automatically deactivated when they subscribe to forum with a lot of activity.

I might tone that down to once per hour instead unless someone else can think of a reason not to?

Ah, interesting! However, I checked the current count of user sundialsvc4 (the one in my screenshot), and his bounce score is now 4 - still lower than what I expected.

Does ‘update once per day’ also mean ‘we count a max of 1 bounce per day’? In that case the score of ‘4’ would make sense. Still, it leaves me a little worried about my IP ranking - some users already have 30 bounces on their name.

So perhaps running this hourly IS a better option if that’s the case.

1 Like

That’s exactly what it means :wink:

Thanks :slight_smile: I guess you guys process a ton of mail too - has this daily process ever led to issues for you?

After looking at our logs, I don’t think it makes that much sense to only update the bounce score once a day.

So I removed that throttling :email:

https://github.com/discourse/discourse/commit/6b1ff0edd394b74ab6da8beef6bb64ef9c3be80a

4 Likes