Задача: У нас есть "Бот на салфетке" - бот для канала и чата. В связи с большим количеством спамеров, приходящих в чат и спамящих своим "очень интересным предложением", возникла необходимость в защите - введением проверки новых пользователей чата через "капчу", при правильном ответе на которую пользователь может продолжить общаться, в противном случае бот исключает его из чата.

Способов решения задачи несколько, от чего она является идеальной для конкурса.

Необходимо:

  • Реализовать "капчу" для нового участника чата.
  • "Капча" должна быть в виде изображения.
  • Для упрощения, достаточно реализовать задачу на сложение, результат которой будет проверять бот.
  • Дать пользователю три попытки на решение задачи.
  • Если пользователь три раза вводит неверный ответ - исключение из чата.
  • Все сообщения пользователя без верного ответа - удалять.
  • (Опционально) Добавить таймер в течении которого пользователь должен ответить верно (включая неверные ответы), если не было верного ответа или не было сообщений вовсе - исключение.

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

Как участвовать? На GitHub создан репозиторий с исходным кодом бота: https://github.com/proDreams/napkin_contest

  • Необходимо сделать fork (именно fork, а не clone!) проекта.
  • Написать функционал антиспама в отдельной ветке.
  • Убедиться, что всё работает.
  • Прописать в README.md описание проделанной работы.
  • Сделать push в свой репозиторий и из него pull request в наш.
  • Ждать начала голосования и участвовать в обсуждении своего и решений других участников.

Приз: Участник набравший больше всех голосов получит небольшой, но приятный приз - 2000 рублей!

Правила:

  • При количестве участников меньше 3-х конкурс считается недействительным.
  • При обсуждении работ других участников будьте вежливы и учтивы. Любая токсичность или принижение будет караться удалением сообщений. Приветствуется конструктивная критика и предложение способов решения.

Пост на сайте Поддержать проект на Boosty Поддержать проект в Telegram

#проект #код_на_салфетке #aiogram #telegram #python #telegram_бот #соревнование #programming #github #обучение #программирование #портфолио #конкурс