Weird behaviour for sent emails

Hello!

I’ve been having this issue where Discourse sends out emails for some replies, but not for others. I have mailing list mode enabled by default, so missing replies can be crucial.

For example, when looking at the “Sent” E-Mail logs, i would see that a user has received an email for reply #27 and #29, but not for #28.

Does anyone have a similar behaviour/know why this is?

Kind regards

This is not weird behaviour, it is deliberate to avoid redundant notification spam for active users.

If you have been “seen” within 10 minutes, Discourse will assume you are currently actively using the site so will not send an email.

Alright, I didn’t know that. My follow-up questions then are:

  1. Is there a way to validate that this behaviour I’m reporting is because of this feature?
  2. What would I need to do if I deliberately wanted to spam everyone in my community (or rather: is there a way to turn this off)?

Kind regards

You can change default email level from “only when away” to “always”. It will ask whether you want to change it for all current users, or just from then on.

1 Like

In Admin - Emails - Skipped emails it’ll say “User was seen recently” in the Reason column.

1 Like

I’ve just looked into my system and found that this has already been set to “always”. Furthermore, I haven’t seen anything like “User was seen recently” in “Skipped emails” (in fact, I didn’t see anything like that in the reason column).

Could something else be causing what I’ve mentioned?

This is a pure guess, but maybe a user has muted a category, topic or tag (and maybe there is no log of that reason for not emailing).

I had a similar experience but never looked into it in detail in the end:

If you want to email 100% of the site activity you should use the “Mailing List Mode”, available in Discourse Meta - The Official Support Forum for Discourse

That would let him receive emails for himself on mailing list mode, rather than force it for all users.

Maybe he has enabled mailing list mode but not set it for all users.

Incidentally, the first two settings below are confusing.

default email mailing list mode
Send an email for every new post by default.

default email mailing list mode frequency
Send an email for every new post
Users who enable mailing list mode will receive emails this often by default.

disable mailing list mode
Disallow users from enabling mailing list mode (prevents any mailing list emails from being sent.)

Consider the following example:
The user has received an email for reply #25 - #28 and #30, but not #29.

If the user had muted a category/topic/tag, they would’ve not received any replies after #28, which they did though, correct?

I’ve enabled mailing list mode for everyone by default using the Setting “default email mailing list mode” that you mentioned. Further, “default email mailing list mode frequency” is set to “Send an email for every new post” and “disable mailing list mode” is disabled.

Thank you very much for your help guys :slight_smile:

2 Likes

That was the sort of thing that I’d noticed on my forum too so, yes, the muting idea is unlikely to be the answer.

Maybe you could do some Data Explorer queries to find out what users’ settings are.

Or have a look at the code linked to above. Maybe there are situations in which emails are skipped but that fact is not logged.