Техническое задание: Telegram-бот для управления файлами объектов
Цель проекта
Разработать автоматизированного Telegram-бота, который позволит пользователям по уникальному идентификатору (ID) объекта загружать фото и видео материалы в соответствующую папку на облачном хранилище. Процесс должен сопровождаться подтверждением и логированием действий.
Основной функционал
- Взаимодействие с базой данных: Бот получает от пользователя числовой ID. На основе этого ID из таблицы (колонки: ID, Адрес объекта) извлекается соответствующий адрес.
- Подтверждение действия: Бот предлагает пользователю подтвердить найденный адрес объекта перед началом загрузки файлов.
- Работа с облачным хранилищем: После подтверждения в указанном аккаунте Google Drive автоматически создается папка. Имя папки формируется по шаблону:
[Адрес объекта] - [ID].
- Прием и сохранение файлов: Пользователь может отправлять боту фото и видеофайлы. Все принятые файлы автоматически загружаются в созданную папку на Google Drive.
- Система логирования: Все действия пользователя (ID, адрес, логин/имя в Telegram, факт загрузки файлов) должны записываться в указанную Google Таблицу (лог).
Технические требования
- Язык программирования: Python.
- Основные библиотеки:
python-telegram-bot (или аналогичная), google-api-python-client для работы с Google Drive и Google Sheets API.
- Данные об объектах (ID и адрес) должны храниться в структурированном виде (БД SQLite/PostgreSQL или Google Таблица).
- Код должен быть чистым, документированным и готовым к развертыванию.
Что необходимо предоставить
- Исходный код проекта.
- Инструкцию по настройке и запуску (настройка доступа к API Google, создание токена бота и т.д.).
- Краткое описание архитектуры бота.