Бюджет: 6000 UAH Срок: 7 дней
Здравствуйте. Опираясь на выше описанное вами, реализацию данного проекта вижу так:
1. Старт и выбор папки (FSM + API).
Пользователь пишет /start или /upload
Бот обращается к внешнему API - получает список доступных папок (например, [Design, Marketing, QA])
Выводит клавиатуру - пользователь выбирает папку
Сохраняет выбранную папку в Redis
2. Приём фото и сохранение в папку.
Пользователь отправляет одно или несколько фото
Бот получает file_id, скачивает файл
Сохраняет в BASE_FOLDER/ИмяПапкиОтAPI/Username_or_ID/
Имя файла = _.jpg
FSM завершает диалог после отправки (state.finish())
3. Логирование в PostgreSQL.
Каждое успешное сохранение фото логируется
4. Обработка ошибок и лог-файл.
Ошибки при скачивании, API, базе - пишет в лог
Критичные ошибки - сохраняет в таблицу errors в PostgreSQL (это опционально)
5. Поддержка Docker + конфиги
Создам Dockerfile и docker-compose.yml
Подниму Redis + PostgreSQL + сам бот
.env файл содержит токен бота, DSN, API URL и пр