У меня есть несколько личных проектов с небольшой посещаемостью и несколькими комментариями в неделю. Чтобы не отслеживать комментарии вручную (как вы знаете, иногда бывает и спам), я начал искать модуль для уведомления меня о новых комментариях. Кто еще помнит Drupal 7, то там был модуль ядра trigger, который позволял отправлять уведомления о новых комментариях, пользователях, материалах и т.д. В Drupal 8 в ядре такого модуля нет. Я отправился в гугл.
Первое что гуглится по запросу "Drupal 8 admin comment notify" это конечно же модуль comment_notify, но если присмотреться к нему поближе, то окажется, что модуль не для администраторов, а для посетителей сайта. У нас, на друпал.ру, он тоже используется.
rules я отбросил сразу, т.к. это слишком тяжеловесное решение для отправки email.
Затем я нагуглил модуль simple_comment_email_notification, но он шлёт письма... сам себе, а именно на адрес указанный как ИСХОДЯЩИЙ АДРЕС в настройках сайта
Непорядок, подумал я и отправился писать issue и прикладывать патч, чтобы слать не на адрес сайта, а на email админа. "Засунь свой патч себе в..." ответил мне немец, автор модуля.
Следующим был comment_admin_notify, однако модуль выглядит как заброшенный. Пару коммитов в год плюс автор абсолютно игнорирует issue, патчи и присваивает авторство коммитов себе.
Ну вы уже поняли, да? Да, я написал свой модуль
Встречайте, Simple Comment Notify
Я решил не ограничиваться только лишь отправкой админу и сделал форму настроек:
Модуль может отправлять письма:
- админу сайта (пользователю с uid=1)
- группе пользователей, имеющим указанную роль (например роль "модератор")
- на кастомный список адресов, если по какой-то причине вы не можете завести пользователя на сайте (или не хотите), а отправлять уведомления надо
Комментарии
Если делать модуль отдельный я бы сделал ему пермиссион на получения уведомления, тогда можно отправлять по пермиции для любой роли, где её юзаешь, и не надо лишних мыл и если админ не один тоже проблемы снимаются. Все становится прозрачней оптимальней и логичней.
С одной стороны да, но с другой стороны заказчик чаще ставит задачу отправлять уведомления на такой-то емэйл, а не таким-то юзерам.
По просьбам трудящихся теперь можно отправлять уведомления в телеграм!