При создании нового канала администраторы увидят опцию для автоматического добавления всех новых и существующих пользователей. С помощью этой функции администраторы могут настроить «каналы по умолчанию» для автоматического включения групп пользователей.
Для существующего канала администраторы могут включить или отключить это поведение в настройках канала. В любом случае появится диалоговое окно подтверждения с указанием количества добавляемых пользователей.
Пользователи автоматически присоединяются к каналу, когда:
их добавляют в группу, имеющую доступ к каналу с функцией автоприсоединения
создается или редактируется канал с включенной функцией автоприсоединения
Обратите внимание: если функция автоприсоединения была отключена после добавления пользователя, он не будет автоматически удален из канала. Если пользователь был автоматически добавлен в «канал по умолчанию», он может покинуть его в любое время.
Новая информационная панель
Нажатие на заголовок канала теперь переводит пользователя на полезную информационную панель с тремя вкладками:
Вкладка О канале отображает заголовок, описание и связанную категорию, предоставляя пользователям необходимую информацию о каждом канале.
Вкладка Участники позволяет пользователям видеть, кто еще находится в комнате (список участников и общее количество). Она включает фильтр для поиска.
Вкладка Настройки позволяет настроить параметры уведомлений (отключение звука, уведомления на рабочем столе или мобильном устройстве). Для администраторов эта вкладка также включает переключатель режима автоприсоединения.
Сегодня мы включили функцию «автоматически добавлять пользователей» для одного из наших чат-каналов «все». Однако на данный момент было добавлено только 284 пользователя из более чем 1200 пользователей нашего экземпляра форума. Я не заметил какой-либо закономерности в том, кто был добавлен, а кто нет. Это текущее ограничение плагина или происходит что-то еще?
Для справки:
Мы работаем на сайте, требующем входа в систему. Затронутый чат-канал в настоящее время привязан к категории, доступ к которой имеют «все». Все пользователи форума в настоящее время имеют доступ к плагину чата в настройках администратора.
Сначала я думал, что это может быть причиной, но некоторые пользователи из списка не были активны уже давно… возможно, никогда. У меня нет точных данных… но при необходимости я могу провести более глубокое расследование.
Вы имеете в виду/предполагаете, что «добавить всех» на самом деле означает «добавить тех, кто взаимодействовал в течение определённого периода времени»?
В настоящее время мы фильтруем пользователей, которые находятся в статусе «неактивные» (а также «подготовленные» пользователи и анонимные пользователи). Вот спецификации для этой логики.
@Roman, есть ли тесты, которые покрывают сценарий для этих пользователей, если они позже станут активными? Или это подразумевается существующей спецификацией, поскольку эта задача выполняется периодически?
Хороший вопрос. Мы покрыли только активацию пользователя, так что это сценарий, который я упустил. Задача выполняется не периодически, но, вероятно, должна, поскольку мы постоянно находим новые случаи изменения состояния пользователя, и нам нужно автоматически добавлять их в группу.
Это определенно имеет смысл. Используется ли здесь статус «неактивен» так же, как флаг «Активирован/Деактивирован» в панели администратора, или он связан с чем-то, отслеживающим фактическое текущее использование платформы? Если это первое, то у нас всё ещё есть проблема, потому что у нас есть только два деактивированных пользователя, нет подготовленных пользователей и 13 анонимизированных пользователей.
Здесь у слова «активный» два значения. Он должен быть активным, так как их email подтверждён, но также это означает, что они посетили сайт хотя бы раз за последние три месяца (для этого мы проверяем их атрибут last_seen_at).
Только для информации: я быстро проверил и обнаружил около 24 аккаунтов tl0 только в разделе «А» среди автоматически добавленных участников чата, которые никогда не входили в систему с момента одобрения их аккаунтов. Большинство из них были созданы в период 2018–2019 годов. По этому определению, все они должны были считаться неактивными.
Да, это было сделано намеренно для обработки случая, когда пользователь создаётся, но на самом деле это не имеет смысла. Переход на запланированную задачу также решит эту проблему.
Таким образом, если у меня настроено «Разрешённые группы чата» с пользователем tl1 и я разрешаю каналу автоматически добавлять пользователей, связанных с категорией, доступной для tl0, что произойдёт? Переопределит ли этот второй вариант первый?
Спасибо за ответ. Я вижу, что в связанном канале (который привязан к категории, доступной для tl0) указано около 1700 участников, но на странице группы показано, что у меня около 4000 пользователей tl0. Я убрал ограничение tl1, но количество не увеличивается. Это задержка в обновлении данных или есть какие-то настройки, которые также влияют на эту цифру?
В настоящее время пользователи добавляются в канал на основе разрешений категории, но те, кто не входит в разрешённые группы чата, вообще не видят никаких функций чата и, следовательно, не имеют к ним доступа. Есть ещё несколько критериев, определяющих, считаются ли они «активными» и попадают ли в список добавляемых, что может объяснять разницу в количестве:
У меня возникает та же проблема, которую @sdpiowa указал ранее в этой теме:
Из этой темы я понял, что в канал добавляются только «активные» пользователи. Это нормально, хотя метка у этой опции должна быть обновлена, чтобы точнее описывать функцию.
Остается неясным, выполняется ли эта проверка периодически. Другими словами, если ранее неактивный пользователь завтра взаимодействует с сайтом, автоматически ли он присоединится к чат-каналу или нет?
Думаю, к настоящему моменту у вас уже есть эмпирические доказательства?
Не совсем понятно, что делает subject.execute(chat_channel_id: channel.id, starts_at: user.id, ends_at: user.id) в спецификации, но мне кажется, что эти пользователи добавляются постоянно.
На моём форуме возвращающиеся пользователи будут добавляться постоянно. Конечно, может быть какая-то задержка, но она не может быть долгой.
(Это показывает один показатель, который, я могу предположить, многим администраторам сообществ не нравится Он прямо указывает, сколько псевдопользователей есть в сообществе…)