Исходя из вашего описания, я считаю, что вы хотели бы иметь всеобъемлющую функцию, которая будет выполнять следующие действия:
- обнаружение
@ + username
в текстовой области (- вам нужен текстпрослушиватель событий набора текста с клавиатуры и распознавание условий специальных символов для @ + username
) - список всех пользователей, относящихся к нечеткому поиску
@ + username
(- необходимо создать API списка пользователей с поддержкой поиска по имени пользователяи позволить запросам F / E к этому API при наборе текста в текстовой области с помощью @ + username
) - иметь возможность выбрать пользователя из выпадающего списка
@mention
(- чисто поведение F / E, просто нужнодругой прослушиватель событий для обнаружения выбора пользователя и введения выбранного имени пользователя в эту текстовую область. - Автоматическое оповещение пользователей
@mention
после комментирования диалога (- здесь необходима функция AB / E. Этот сервер будет вести этот диалогданные после комментирования, и сервер должен проверить, содержит ли диалог какой-либо раздел @mention
, если таковой имеется, тогда найдите использованиеr связано с этим @mention
, и отправьте электронное письмо пользователю, напрямую используя Mailer или косвенно используя Mail Worker.)
Это всего лишь один простой способ реализовать эту функцию без использования каких-либо сторонних поставщиков.интерфейс.Даже если вы собираетесь использовать ActionText
в Trix edior
, вам нужно, по крайней мере, иметь возможность
- , предоставляя API для возврата результатов поиска в списке пользователей
- и отправки писемдля тех
@mention
пользователей в B / E как минимум.
Дайте мне знать, если вам нужны какие-либо дополнительные подробности, если какая-либо часть моего комментария здесь не ясна.