So far, I’ve not been able to reproduce the issue. On a test site, I created a group chat with three other users, (0 admins, 1 moderator, 2 normal users). I sent a handful of messages, and ~3 minutes later, all three users got their emails.
None of those test users had visited the site for quite some time.
Can you try creating a non-admin test user on your site using a + address to test this out and see if you can reproduce it?
OK, yeah, so I do not receive emails for new messages unless I’m mentioned, even when I set my notification settings for a channel this way:
(whereas I do get emails for personal chats and group direct messages when I have that “channel” configured this way).
Actually, I’m doubting now that these notification settings for the channel have any impact on whether emails are sent – checking that now.
For email notifications, I’m pretty sure this is the current behavior, after spending some more time exploring today (assuming user preference is not set to “never” email):
send email notification for @mentions if user is away
only exception is if the channel is muted
send email notification for direct messages (including group direct messages) if user is away
only exception is if the channel is muted
do not send email notifications for messages in channels if user or group was not mentioned
no way to increase the email volume here at this time
For folks that really do want emails for things even when not mentioned, I think the way to untangle this may be to add an explicit, analagous setting for emails (and maybe a user preference for the default).
To use Discourse Chat in our case we’d need to ensure that people are reliably notified about the personal messages they are being sent. This means:
Receiving a desktop/push notification when the window is not active (regardless of when the user was last active)
Receive an email notification after X minutes of the user not seeing the messages.
We would also like to be able to configure certain channels to behave in this way. Ideally, this would be a channel-level setting that users would then be able to change, if they wished, rather than a user-level setting. (Otherwise I’d have to explain to various groups how to configure their clients.)