Я активно изучаю Discourse (только что запустил один на Vultr ). После одного из моих вопросов о групповых тегах Group tagging notification (возможность присваивать теги группам).
Теперь я хотел бы узнать, возможно ли по умолчанию назначать всем пользователям групповой тег (без ручной работы ;)). Чтобы каждый пользователь мог отмечать всех остальных.
Это позволяет, например, администраторам принудительно отправлять пользователям уведомления о определённых постах (конечно, это полезно только для внутреннего использования ).
Теги пользователей? Теги не работают так, и не предназначены для такого использования. Тогда у вас было бы огромное количество тегов. Вы, возможно, имели в виду упоминания?
И если вы хотите разбудить всех пользователей, используя теги или упоминания, это просто невозможно.
На сколько мне известно, это не достигает всех. Однако я могу смешать это с @here. Есть настройка max users notified per group mention, но я не знаю, может ли она быть бесконечной или невероятно большой.
Хорошо, я хочу иметь возможность упоминать @all, например. Это должно уведомлять всех пользователей на платформе. Если переименовать группу @trust_level_0 в @all и упомянуть её в сообщении, получат ли все пользователи уведомление?
Когда кто-то получает более высокий уровень доверия, будет ли этот пользователь также отключён от группы @trust_level_0?
Но вы можете настроить в Discourse хук, который будет отправлять запрос на конечную точку, а та, в свою очередь, сообщит API Discourse о добавлении пользователя в группу при регистрации.
Вы можете переименовать группы по умолчанию через admin/customize/site_texts Чтобы изменить уровень доверия 0, используйте groups.default_names.trust_level_0
Имя не должно совпадать с именем существующего пользователя или группы, иначе переименование не применится. Изменение выполняется в фоновом задании и будет применено после его выполнения. Вы можете ускорить процесс, запустив Jobs::EnsureDbConsistency через /sidekiq/scheduler
Мне было интересно, почему обновление заняло так много времени (я его тестировал). Но когда вы меняете название группы, можно ли будет упоминать её через @newGroupname?
Вы можете переименовать его. Это просто запутает любого, кто знаком с Discourse и попытается помочь позже. Скорее всего, это создаст больше проблем, чем решит, но я не знаю это сообщество, только несколько сотен, с которыми я здесь помогал. Я могу ошибаться.
Причина, по которой я задаю этот вопрос, заключается в следующем: если вы используете, например, слой аутентификации от Google (OAuth2), вы не можете вручную назначать пользователя в определенную группу каждый раз. Поэтому вам придется либо:
Изменить имя группы по умолчанию
Запустить вебхук с помощью PHP-скрипта, который создаст обратный вызов и добавит пользователя в эту группу.
Я не думаю, что это так запутанно? Пока они упоминают о переименовании, если это уместно, всё кажется довольно простым. Насколько мне известно, несколько человек уже так сделали, и, кажется, они не сообщали о проблемах? (кроме конфликта группы/имени пользователя, из-за которого переименование молча не выполняется).
Есть ли ещё какие-то причины, по которым вы не рекомендуете этого делать?
Уровень доверия используется в тысячах мест. Если trust_level_0 назвать «not_trust_level», и вы начнёте отлаживать какую-либо проблему, связанную с уровнями доверия, вы, скорее всего, запутаетесь. «Погодите. trust_level_0 не существует. Как это вообще работает!?» — можете вы воскликнуть.
Я использую пользовательские названия уровней доверия без проблем, за исключением упомянутого конфликта между существующим именем пользователя и новым названием группы (решено здесь Trust_level default name?). Разве не вся суть раздела с пользовательским текстом в меню администратора заключается в том, чтобы внести одно изменение и сразу обновить текст во всех тысячах местах интерфейса, где он используется?
По моему опыту, изменение названия уровня доверия — это простой способ придать вашему форуму более целостную тематику, да и просто веселее.
Тренер > Ас > Лидер гораздо более осмысленно, соответствует бренду и интереснее для моего сообщества, чем trust_level_1 > trust_level_2 > trust_level_3
Рад, что у вас всё работает! Возможно, я просто слишком ригиден.
Моя мысль заключалась в том, что существует множество строк для настройки, в которых упоминаются уровни доверия. Но если у вас не возникло проблем, то это реальные данные, и у меня нет конкретных примеров (насколько я помню), когда это становилось реальной проблемой, поэтому, скорее всего, можно не обращать на меня внимания.
Предупреждение: TL0 включает пользователей из стадии. Если вы используете пользователей из стадии и отправляете сообщение в эту группу, пользователям, находящимся на стадии, будет отправлено письмо.