Все модули

Кадр недели

Канал со скриншотами обычно живёт сам по себе: кто-то выкладывает кадр, кто-то отвечает на него тремя строчками обсуждения, и через неделю найти в этой ленте хорошую картинку уже невозможно, а лучшие работы никто не замечает. «Кадр недели» превращает такой канал в конкурс с понятными правилами. Всё, что попало в него без картинки, бот убирает и спокойно объясняет автору почему; под каждым принятым кадром появляется кнопка голоса со счётчиком. Раз в неделю, в выбранный владельцем день и час, бот сам закрывает неделю: называет тройку лучших, упоминает авторов и выдаёт победителю роль на заданное число дней, а когда срок выйдет — снимает её сам. Прошлые недели собираются в витрину: одно сообщение, которое обновляется само и ведёт на сами кадры, а не на файлы, ссылки на которые у Discord живут недолго. От модерации не требуется ничего: ни считать голоса, ни помнить про воскресенье.

Кому подходит

Серверам, где канал со скриншотами зарастает обсуждением и хорошие кадры в нём теряются
Тем, кто хочет ровную еженедельную активность без ручной работы модерации: голоса, итоги и роль бот ведёт сам
Сообществам, где победу принято отмечать заметной ролью на время, а не только словами

Как это работает

Весь путь целиком, шаг за шагом. Справа — то, что реально увидят на вашем сервере.

  1. 1

    Канал конкурса держится в чистоте

    Всё, что попадает в выбранный канал без картинки, бот убирает. Объяснение уходит автору в личные сообщения, а если личные закрыты — короткой запиской прямо в канал, которая исчезает сама через сорок пять секунд. Если у бота нет права «Управление сообщениями», он не трогает ничего и пишет об этом в журнал: обещать человеку, что его сообщение убрано, и оставить его на месте — хуже, чем промолчать.

    кадр-недели
    B
    Ваш ботБОТ
    Сообщение убрано из канала конкурса
    Здравствуйте, в канале конкурса принимаются только сообщения с картинкой. Ваше сообщение убрано, обсуждение кадров ведите в другом канале.
  2. 2

    Голос — одной кнопкой

    Под каждым принятым кадром бот вешает своё сообщение с кнопкой: чужое сообщение он редактировать не может, компоненты добавляются только к своим. Счётчик стоит прямо на кнопке и виден всем сразу. Один человек — один голос за кадр, за свой кадр голосовать нельзя, повторное нажатие снимает голос. Голоса лежат в базе с ключом «кадр плюс человек», поэтому два быстрых нажатия ничего не задваивают, а счётчик каждый раз пересчитывается по таблице, а не прибавляется на единицу.

    кадр-недели
    B
    Ваш ботБОТ
    видит только тот, кто нажал
    Голос учтён. За этот кадр теперь 12 голосов. Нажмите кнопку ещё раз, если захотите передумать.
    Понравился кадр — поддержите его голосом.
    Голос · 12
  3. 3

    Потолок кадров в сутки

    Владелец задаёт, сколько кадров в сутки может выложить один человек. Считаются последние двадцать четыре часа, а не календарный день, и считает это сама база: процесс бота живёт по UTC, база по Москве, и подсчёт в коде ошибался бы на три часа. Кадр сверх потолка убирается с таким же спокойным объяснением, как и сообщение без картинки. Ноль в настройке означает «не ограничивать».

    кадр-недели
    B
    Ваш ботБОТ
    Сообщение убрано из канала конкурса
    Здравствуйте, за последние сутки от вас уже достаточно кадров. Последний убран — попробуйте выложить его позже.
  4. 4

    Итоги недели в назначенный час

    Раз в неделю, в выбранный день и час по московскому времени, бот закрывает неделю: считает кадры, выложенные с прошлого подведения, отбирает призовые места и объявляет их с упоминанием авторов — в отдельный канал итогов или в сам канал конкурса. Неделя захватывается одним атомарным запросом, поэтому расписание и команда владельца не подведут одни и те же итоги дважды. Если бот пролежал свой час, итоги уйдут при первой возможности, а не пропадут совсем. Перед объявлением каждый претендент проверяется: кадр, удалённый автором уже после голосования, в тройку не попадёт, и ссылка в витрине не поведёт в пустоту.

    итоги-конкурса
    B
    Ваш ботБОТ
    Кадр недели
    🥇 @Мира — 21 голос · ссылка на кадр 🥈 @Ставр — 17 голосов · ссылка на кадр 🥉 @Лада — 9 голосов · ссылка на кадр
  5. 5

    Роль победителю и её снятие

    Победителю выдаётся выбранная роль на заданное число дней. Перед выдачей бот проверяет, что роль существует, не служебная и стоит ниже его собственной: иначе Discord откажет, и владелец узнает об этом из журнала, а не из тишины. Срок хранится в базе её же выражением и поэтому переживает любой перезапуск. Раз в пять минут бот проходит по вышедшим срокам и снимает роль, а если в этот момент снять её нельзя — оставляет строку в работе и вернётся к ней следующим проходом, когда владелец поправит порядок ролей.

    B
    Ваш ботБОТ
    Роль победителю выдана
    @Мира получил роль Кадр недели. Срок: 7 дн.
  6. 6

    Витрина победителей

    Одна команда в нужном канале ставит витрину — сообщение со списком прошлых недель, которое дальше обновляется само после каждых итогов, переносить его не нужно. Ссылки в нём ведут на сообщения с кадрами, а не на файлы: ссылки на вложения Discord подписаны и через несколько дней перестают открываться, и витрина превратилась бы в набор битых картинок. Повторная команда переносит витрину в другой канал и убирает прежнее сообщение, чтобы в чате не оставалось мёртвого списка, который больше не обновляется. Вторым блоком в витрине идут правила участия: куда выкладывать кадр, сколько кадров в сутки принимается, когда подводятся итоги и что получает победитель. Правила бот собирает из ваших же настроек, поэтому они не разойдутся с тем, как конкурс ведёт себя на самом деле: поменяли в кабинете день итогов — изменилось и объявление в канале. Поэтому витрину и стоит ставить в сам канал конкурса: тогда человеку, зашедшему первый раз, не приходится гадать, как сюда попасть.

    конкурсы
    B
    Ваш ботБОТ
    Витрина победителей
    Кто побеждал в прошлые недели. Сообщение обновляется само после каждых итогов. Неделя 01.06 — 08.06.2026 🥇 @Мира — 21 голос 🥈 @Ставр — 17 голосов Неделя 25.05 — 01.06.2026 🥇 @Лада — 30 голосов

Что вы настраиваете

Всё это меняется в личном кабинете в любой момент — каналы и роли выбираются списками с вашего сервера, вводить ID руками не нужно. Бот подхватывает изменения сам.

Конкурс

  • Канал конкурса
  • Сколько кадров в сутки с человека
  • Считать кадром прямую ссылку на картинку
  • Минимум голосов для призового места
  • Сколько призовых мест

Голосование и итоги

  • Строка над кнопкой голоса
  • Надпись на кнопке голоса
  • Надпись на кнопке закрытого голосования
  • День подведения итогов
  • Час подведения итогов

Награда

  • Роль победителю
  • На сколько дней выдавать роль

Объявление победителей

  • Канал объявления итогов
  • Упоминать победителей в объявлении
  • Текст упоминания победителей в объявлении

Витрина победителей

  • Заголовок витрины победителей
  • Вступление витрины победителей
  • Что писать, если за неделю не набралось призовых кадров

Ответы автору

  • Заголовок сообщения автору об убранном кадре
  • Что писать автору сообщения без картинки
  • Что писать автору, когда кадров за сутки слишком много

Оформление и журнал

  • Цвет сообщений
  • Заголовок итогов
  • Кто может управлять конкурсом
  • Канал журнала

Команды в Discord

Что вводят на сервере, когда модуль подключён. Команды набираются со слэша — Discord подсказывает список сам, наизусть помнить ничего не нужно.

/кадр-итоги

Закрывает текущую неделю досрочно: считает голоса, объявляет победителей и начинает новую неделю.

Где
в любом канале сервера, ответ увидит только тот, кто дал команду
Кто
управляющие сервером и роли из настройки «Кто может управлять конкурсом»
/кадр-витрина опубликовать сразу

Ставит в текущий канал витрину — одно сообщение, которое дальше обновляется само. В нём и победители прошлых недель, и правила участия: куда выкладывать кадр, сколько кадров в сутки принимается, когда итоги и что получает победитель. Правила собираются из ваших настроек, так что переписывать их вручную не придётся.

Где
лучше всего прямо в канале конкурса — там правила увидит тот, кому они нужны; но подойдёт любой канал, где витрина должна висеть постоянно
Кто
управляющие сервером и роли из настройки «Кто может управлять конкурсом»
/кадр-проверка проверка настроек

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

Где
в любом канале сервера, ответ увидит только тот, кто дал команду
Кто
управляющие сервером и роли из настройки «Кто может управлять конкурсом»

Команды для администрации Discord показывает только тем, у кого есть нужное право сервера. Чтобы ими пользовалась ваша модерация без прав администратора, откройте доступ её ролям: Настройки сервера → Интеграции → ваш бот → нужная команда.

Готовы попробовать?

Бот разворачивается за пару минут: выбираете модули, вставляете токен, приглашаете на сервер.

Собрать бота