Модуль для Discord
Дни рождения
На сервере, который живёт уже несколько месяцев, все друг друга знают, а вот даты не помнит никто.
Без прав администратора. Настройка в веб-панели.
Зачем это нужно
Дни рождения лежат в лучшем случае в каком-то старом канале, куда давно никто не заглядывает, и потому проходят молча. Между тем именно эта мелочь отличает чат-группу от компании, где люди друг друга замечают: поздравление, о котором не пришлось просить. Бот берёт на себя только память. Кто хочет, тот заносит свою дату один-единственный раз; дальше сервер напоминает о себе сам, год за годом, и никому не нужно вести список.
Как это выглядит в жизни
Кто хочет участвовать, сам вводит день и месяц, а год только по желанию. Дальше месяцами ничего заметного не происходит. В сам день бот пишет в выбранный тобой канал, упоминает человека и отправляет текст, который ты сохранил; одна подстановка вставляет имя, вторая вставляет возраст, если год указан. Если ты задал именинную роль, виновник торжества носит её этот день и на следующий снова остаётся без неё; в списке участников сразу видно, кого сегодня поздравляют. Кому интересно, чья очередь дальше, вызывает список ближайших дат; ответ видит только он сам, так что в канале ничего не остаётся.
Команды этого модуля
/birthday
На что обратить внимание
Дата рождения относится к персональным данным, и внутри сервера Discord она ими и остаётся. Поэтому указывать её здесь добровольно: бот сам ни у кого ничего не спрашивает, ничего не вычитывает из профилей и хранит только то, что человек ввёл сам. Обязательны день и месяц; год рождения остаётся необязательным полем, оно нужно лишь тогда, когда в поздравлении должен стоять возраст. У того, кто год не указал, подстановка возраста остаётся пустой. Это более скромный вариант, и объяснять его на сервере стоит именно так, а не считать год само собой разумеющимся. Список ближайших дат в любом случае показывает только день и месяц, но никогда год. Кто хочет избавиться от своей записи, удаляет её соответствующей подкомандой, и запись действительно исчезает, а не просто прячется. И наконец, помни: само поздравление стоит в канале открыто. Кто не хочет, чтобы его называли, просто не записывается, и обижаться на это никому не стоит.
Настройка в три шага
- Включи модуль «Дни рождения» в панели.
- Задай канал для поздравлений, ведь без него бот молчит, даже если даты сохранены.
- При желании укажи именинную роль; боту нужно право управлять ролями, а его собственная роль должна стоять выше.
- Напиши текст поздравления и расставь подстановки имени и возраста там, где им место.
Частые вопросы
Нет. Дня и месяца достаточно, а год остаётся добровольным дополнительным полем. Если его не указать, подстановка возраста в поздравлении останется пустой, и никто не узнает, сколько тебе исполняется.
Подкомандой удаления у /birthday. Запись стирается, и с этого момента бот ничего за тебя не объявляет. Записаться заново можно в любой день, и никому из команды для этого ничего делать не нужно.
Нет. Бот запоминает для каждого, в каком году его поздравляли в последний раз, и ставит эту отметку тем же действием, что и проверку. Если проход случится несколько раз, пройдёт только первый, остальные запись пропустят.
Такую дату можно указать, и в високосный год поздравление выйдет ровно в этот день. В годы без 29 февраля объявления, соответственно, не будет; бот сам не переносит его на соседний день.
Обязательно ли указывать год рождения?
Нет. Дня и месяца достаточно, а год остаётся добровольным дополнительным полем. Если его не указать, подстановка возраста в поздравлении останется пустой, и никто не узнает, сколько тебе исполняется.
Как убрать свою запись?
Подкомандой удаления у /birthday. Запись стирается, и с этого момента бот ничего за тебя не объявляет. Записаться заново можно в любой день, и никому из команды для этого ничего делать не нужно.
Может ли человек получить поздравление дважды за день?
Нет. Бот запоминает для каждого, в каком году его поздравляли в последний раз, и ставит эту отметку тем же действием, что и проверку. Если проход случится несколько раз, пройдёт только первый, остальные запись пропустят.
А как быть с 29 февраля?
Такую дату можно указать, и в високосный год поздравление выйдет ровно в этот день. В годы без 29 февраля объявления, соответственно, не будет; бот сам не переносит его на соседний день.