Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Telegram-бот для набора в волейбольную секцию

Telegram-бот на pyTelegramBotAPI, который проводит анкетирование новых игроков, оценивает их уровень и генерирует персональные рекомендации по тренировкам на основе анкеты.

Что делает бот

  1. Анкетирование — последовательно задаёт 10 вопросов (ФИО, возраст, рост, город, опыт игры, позиция, ударная рука, физическая форма, удобное время, телефон) через /start.
  2. Валидация ответов — регулярными выражениями проверяет формат каждого ответа (возраст 6–60 лет, рост 140–220 см, номер телефона по маске +7XXXXXXXXXX и т.д.) и просит исправить некорректный ввод.
  3. Оценка уровня игрока — правило-ориентированная логика на основе опыта (лет игры) и физической формы: 5 уровней от «Новичок» до «Профессионал».
  4. Персональные рекомендации — генерирует индивидуальный план: частота и продолжительность тренировок (в зависимости от возраста и уровня), акценты по позиции на площадке (либеро, доигровщик, центральный, диагональный, связующий, универсал), советы по физической подготовке.
  5. Уведомление администратора — отправляет тренеру полную анкету и краткие рекомендации, сохраняет каждую заявку в volleyball_applications.json.
  6. Команда /myprofile — пользователь может посмотреть свою последнюю поданную анкету.

Стек

Python, pyTelegramBotAPI (telebot), регулярные выражения, JSON.

Как запустить

pip install -r requirements.txt

# токен и ID администратора передаются через переменные окружения, не хранятся в коде
export BOT_TOKEN="ваш_токен_от_BotFather"
export ADMIN_ID="ваш_telegram_id"

python bot.py

На Windows (PowerShell):

$env:BOT_TOKEN = "ваш_токен_от_BotFather"
$env:ADMIN_ID = "ваш_telegram_id"
python bot.py

Примечание по безопасности

В исходной версии скрипта токен бота был захардкожен прямо в коде. В этой версии он вынесен в переменные окружения (BOT_TOKEN, ADMIN_ID) — не коммитьте реальный токен в репозиторий. Если токен когда-либо публиковался или хранился в открытом виде, отзовите его через @BotFather (/revoke) и выпустите новый.

About

Telegram-бот для набора в волейбольную секцию: анкетирование, оценка уровня, персональные рекомендации

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages