Техническое задание: 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, создание токена бота и т.д.).
  • Краткое описание архитектуры бота.

Тестирование нового веб-продукта

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