Mention group/user without notification

Мне кажется, что функция «не уведомлять», как бы хорошо она ни была документирована, на практике всё равно будет своего рода скрытой функцией. Ею будут пользоваться продвинутые пользователи, но обычный посетитель форума, возможно, никогда её не обнаружит.

Клик по сгенерированной ссылке, чтобы увидеть эту опцию, тоже будет довольно скрытым. Если предполагается наличие элемента интерфейса, было бы здорово, если бы он также улучшал обнаруживаемость.

Можно добавить иконку на сгенерированную ссылку, чтобы побудить к клику. Или всплывающее окно при выборе имени из списка автодополнения. Или идея от mcwumbly, озвученная выше:

…элемент, похожий на список адресатов в композере прямых сообщений, который явно показывал бы, кто именно и/или какие группы будут уведомлены:
direct-message-address-list

2 лайка

Да, и не стоит забывать, что в большинстве сообществ норма, скорее всего, противоположна тому, чего мы хотим здесь на Meta.

А что, если бы существовали какие-то магические настройки сайта, позволяющие по умолчанию сделать уведомления менее навязчивыми для участников, которых упомянули, но которые ещё не активно участвуют в теме? При этом могло бы появляться всплывающее окно, уведомляющее автора и предлагающее всё равно отправить им уведомление:

Вы упомянули @toddz @tobiaseigen, но они не активны в этой теме. Вы уверены, что хотите их уведомить? Да/Нет/Редактировать пост

2 лайка

Не уверен, связано ли это, но использование <a class="mention">Username</a> создаёт всплывающее упоминание: @NateDhaliwal, но не уведомляет пользователя.

Для групп можно использовать <a class="mention-group">Group_name</a>, например: @customer-success.

Обратите внимание, что в обоих случаях символ @ является необязательным. NateDhaliwal и customer-success работают одинаково.

3 лайка

Мне бы совсем не понравилось, если бы что-то появлялось, когда я печатаю :thinking:

1 лайк

Что ж, похоже, эта функция уже существует для продвинутых пользователей!

Лично я хотел бы видеть настройку на уровне пользователя для управления этим (с настройкой по умолчанию для всего сайта) со следующими вариантами:

  1. Никакого уведомления при @упоминаниивозможно, вместо этого небольшая синяя точка?

  2. Одно уведомление при @упоминаниито, что, на мой взгляд, должно быть по умолчанию

  3. Тема переводится в режим «Слежение» при @упоминаниитекущее (немного агрессивное) поведение ядра

2 лайка

Мне кажется, что простая реализация «да/нет/редактировать» потребует меньше кода, чем диалог mcwumbly с выбором для каждого пользователя.

Однако меня настораживает слово «активный». Означает ли оно просто присутствие в теме?

Например, я упоминаю mcwumbly без @, потому что, хотя он и находится там, он не был активен в этой ветке с 2018 года, и я предполагаю, что вы вернёте его в разговор, если это уместно. Подумает ли обычный пользователь, что нужно опустить @? Или же он по привычке или из-за воспринимаемых норм будет ставить его по умолчанию, а затем столкнётся с выбором «всё или ничего»? :thinking:

2 лайка

Я тоже! Но было бы здорово, если бы при клике на @имя пользователя появлялось маленькое меню с опциями (похожее на выделение и цитирование/редактирование/объяснение текста).

1 лайк

Это очень полезно, и поскольку необходимость создавать «фейковые» не уведомляющие @упоминания, вероятно, является функцией только для продвинутых пользователей, этого может быть достаточно. Спасибо, @NateDhaliwal!

Можно было бы создать аддон для панели инструментов редактора Markdown, который оборачивал бы текст в <a class="mention"> ТЕКСТ </a>. (Я видел TC или плагин с подобной кастомной функциональностью, но не помню, какой именно!)

Также я использую системный инструмент под названием Espanso, который автоматически разворачивает ваши пользовательские сокращения в нужный текст. Это тоже может быть полезно здесь для быстрого вставки HTML.

2 лайка

Да, не должно быть слишком сложно, я думаю? Насколько я помню, это будет

api.onToolbarCreate((event) => {
  event.applySurround(...);
});

на память.

1 лайк

Не изменилось ли это в ядре недавно? Я только что заметил, что упоминание меня здесь, на meta.discourse.org, не переводило меня в режим «Слежу» по теме — и на моих сайтах это тоже больше не происходит.

Это огромное облегчение!

1 лайк

Я не верю, что когда-либо упоминание заставляло человека начать следить за темой.

Однажды, когда я был клиентом, я предложил это как опцию, но я почти уверен, что это никогда не было реализовано ни в какой форме: Preference: Automatically Watch Topic when I am @mentioned, quoted, or invited

2 лайка

Я на 99% уверен, что у нас никогда не случалось, чтобы упоминание меняло уровень уведомлений о теме для упомянутого.

Если это произошло, то, скорее всего, из-за другого фактора (пользователь следит за темой/категорией, личное сообщение и т.д.).

2 лайка

Натан, есть ли шанс, что вы изменили настройку пользователя, влияющую на это, по адресу https://meta.discourse.org/my/preferences/tracking?

Возможно, настройку «Автоматически отслеживать темы, которые я посещаю…»? У меня она установлена на 4 минуты.

Screenshot 2025-12-18 at 12.18.48 PM

(кстати: интересно, что эти настройки не позволяют пользователю увидеть, какие значения по умолчанию установлены для настроек пользователя на сайте, и не дают возможности сбросить предпочтения до значений по умолчанию для сайта. Это удобно для настроек сайта.)

2 лайка

Мне очень нравится эта идея, и я иногда хотел упомянуть кого-то, не уведомляя его.

Не знаю насчёт других языков, но во французском использование некоторых клавиш с диакритическими знаками может быть немного неудобным, потому что при нажатии они не появляются сразу в поле ввода[1]. Нужно нажать ещё одну клавишу, и результат зависит от второй нажатой клавиши.

Пример с клавишей ~, которая может использоваться как диакритический знак.

Если нажать ~, а затем Enter, на экране появится ~.

Если нажать ~, а затем z, на экране появится ~z.

Но если нажать ~, а затем a, на экране появится ã.

Это не слишком неудобно, но меня бы не удивило, если бы некоторые французы не знали, как написать ~ перед буквой :thinking:


  1. Это относится к клавишам ~, `, ^ и ¨ ↩︎

Нет, дело точно было в отслеживании. Похоже, я просто поверил во что-то, что оказалось не правдой!

1 лайк

Наше сообщество должно иметь возможность создавать справочники, указывающие, к каким людям можно обращаться по тому или иному поводу.

Реализация должна быть максимально удобной для пользователя, чтобы нетехнические специалисты могли легко добавлять или изменять информацию.

Я надеюсь использовать преимущества интерфейса упоминаний, такие как (а) открытие окна поиска после ввода @ и (б) создание ссылки на карточку пользователя из этой записи, но без отправки уведомлений каждому упомянутому пользователю.

В настоящее время я использую формат [Имя пользователя](/u/login) без вышеупомянутых функций.

Я рассматриваю варианты вроде:

  • [user-directory] … множество упоминаний в таблицах … [/user-directory]
  • [user]login[/user]
  • какой-то экранированный вариант @@login

Как это можно реализовать?

2 лайка

Я использовал это раньше, и это, кажется, работает: Firepup650
Исходный код:

<a class="mention" href="/u/firepup650">Firepup650</a>

Обратите внимание: открытие в новой вкладке ссылается на атрибут href, тогда как клик по упоминанию сам по себе имеет другое поведение. Например: Firepup650
Исходный код:

<a class="mention" href="/u/thoka">Firepup650</a>
3 лайка
https://meta.discourse.org/u/thoka

https://meta.discourse.org/u/Firepup650

https://meta.discourse.org/u/Heliosurge
1 лайк

Это тоже работает, но при клике не отображается интерфейс карточки пользователя (именно это, как я понял, хотел автор оригинального вопроса).

2 лайка

Повторно прочитав заявление автора темы (OP), я заметил, что там упоминается контакт. Возможно, это даже простая ссылка для отправки личного сообщения (PM/DM) при клике на имя пользователя в списке.

Например:

Список команды поддержки
Кликабельные имена участников, которые открывают окно PM/DM для выбранного пользователя.


Однако ваше решение звучит более элегантно, так как пользователь может увидеть полную карточку и выбрать, отправить ли сообщение или начать чат. Таким образом, продемонстрированный вами метод кажется лучшим решением.

1 лайк