Выход из частного чата на самом деле не удаляет вас

Версия: 3.2.0.beta4-dev, запущенная из коммита a5ed0ea5d6

Шаги для воспроизведения:

  1. Пригласите кого-либо в групповой чат.
  2. Нажмите большую красную кнопку «Покинуть канал».
  3. Система по-прежнему показывает, что вы в канале, и вы всё ещё можете перейти по URL. Это можно проверить с другой учётной записи.

Для интереса я попробовал выполнить следующий запрос, но он тоже не сработал:

DELETE FROM user_chat_channel_memberships WHERE chat_channel_id = <id> AND user_id = <id>; 
8 лайков

На прошлой неделе я столкнулся с этой проблемой в чат-группе из 16 участников. Моим решением было скрыть группу, попросив всех выйти, кроме меня. Примерно через 20 минут иконка чата изменилась с 16 на 1, хотя все участники всё ещё отображались в списке.

Но сегодня утром кто-то нашёл упоминание/уведомление из более ранней переписки в группе и по ошибке ответил на него, не осознав этого. Это мгновенно «воскресило» группу. Иконка снова показывает 16 участников.

Этим же днём я создал новый экземпляр Discourse, чтобы убедиться, что проблема не связана с базой данных или плагинами, и смог легко воспроизвести её.

2 лайка

Отключение уведомлений канала предотвращает спам-уведомления, хотя это не выводит вас из канала.

2 лайка

По какой-то причине пинги всё равно обходят это ограничение, как в каналах чата, так и в личных сообщениях.

4 лайка

Спасибо всем, кто сообщил об этой проблеме. Мы зафиксировали её с нашей командой и включили в план работ для исправления.

5 лайков

Прекрасный @j.jaffeux сегодня развернул обновление, которое должно решить эту проблему — вам понадобится последняя версия кода, но при моём тестировании всё работало как по маслу.

После выхода из группового чата пользователь больше не будет отображаться в списке участников, получать уведомления о групповом чате или иметь прямой доступ к нему (например, через URL) — пока кто-то снова не добавит его в группу.

Пожалуйста, проверьте и сообщите, если заметите какие-либо проблемы!

5 лайков

2 сообщения были перенесены в новую тему: Как покинуть групповой чат?