Пока мне не удалось воспроизвести проблему. На тестовом сайте я создал групповой чат с тремя другими пользователями (0 администраторов, 1 модератор, 2 обычных пользователя). Я отправил несколько сообщений, и примерно через 3 минуты все трое пользователей получили свои письма.
Ни один из этих тестовых пользователей не посещал сайт уже довольно давно.
Попробуйте создать тестового пользователя без прав администратора на вашем сайте, используя адрес с символом +, чтобы проверить это и посмотреть, сможете ли вы воспроизвести проблему?
Окей, да, так что я не получаю письма с уведомлениями о новых сообщениях, если меня не упомянули, даже когда я настраиваю параметры уведомлений для канала следующим образом:
(в то время как я получаю письма для личных чатов и групповых прямых сообщений, когда этот «канал» настроен таким образом).
На самом деле, я сейчас сомневаюсь, что эти настройки уведомлений для канала как-то влияют на отправку писем — сейчас это проверяю.
Что касается уведомлений по электронной почте, я почти уверен, что текущее поведение таково (после того как я сегодня потратил немного больше времени на изучение, при условии, что пользовательские настройки не установлены на «никогда»):
Отправлять уведомление по электронной почте для @упоминаний, если пользователь в режиме «отсутствует».
Единственное исключение — если канал отключен.
Отправлять уведомление по электронной почте для прямых сообщений (включая групповые прямые сообщения), если пользователь в режиме «отсутствует».
Единственное исключение — если канал отключен.
Не отправлять уведомления по электронной почте о сообщениях в каналах, если пользователь или группа не были упомянуты.
На данный момент нет способа увеличить объем писем в этом случае.
Для тех, кто действительно хочет получать письма даже без упоминаний, я думаю, что способ разобраться в этом может заключаться в добавлении явной аналогичной настройки для писем (и, возможно, пользовательской настройки по умолчанию).
Чтобы использовать Discourse Chat в нашем случае, нам необходимо обеспечить надежное уведомление пользователей о личных сообщениях, которые им отправляются. Это означает:
Получение уведомления на рабочем столе или push-уведомления, когда окно не активно (независимо от того, когда пользователь был в последний раз активен);
Получение уведомления по электронной почте через X минут после того, как пользователь не увидел сообщения.
Мы также хотели бы иметь возможность настраивать определенные каналы таким образом. В идеале это была бы настройка на уровне канала, которую пользователи могли бы при желании изменить, а не настройка на уровне пользователя. (Иначе мне пришлось бы объяснять различным группам, как настроить их клиенты.)