Техническое задание: Автоматизация бэкапа Telegram-чатов

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

Основная логика работы для одного аккаунта

Скрипт должен выполнять действия строго в указанном порядке:

  • Запуск портативного клиента Telegram с использованием заданных прокси-настроек.
  • Автоматический экспорт истории чатов (диалогов) в файлы.
  • Сохранение экспортированных файлов в указанную целевую папку внутри рабочего каталога.
  • Выполнение операций Git: pull, add, commit, push для загрузки изменений в удаленный репозиторий GitLab.
  • Отправка уведомления о результате операции (успех/ошибка) в заданный Telegram-чат через бота.
  • Корректное завершение работы клиента Telegram.
  • Переход к обработке следующего аккаунта из списка.

Входные данные и конфигурация

Параметры для каждого аккаунта

  • Путь к исполняемому файлу портативного клиента Telegram.
  • Путь к рабочему каталогу (сессии) для данного аккаунта.
  • Настройки прокси (тип, адрес, порт, учетные данные при необходимости).
  • Список чатов (диалогов) для экспорта.
  • Путь к папке внутри локального репозитория Git, куда будут сохраняться файлы экспорта для этого аккаунта.

Общие параметры

  • Токен Telegram-бота для отправки уведомлений.
  • Идентификатор чата (chat_id), в который должны поступать уведомления.
  • Корневая папка репозитория, относительно которой будут создаваться папки для каждого аккаунта.

Требования к реализации

  • Скрипт должен быть написан на Python.
  • Необходима устойчивость к ошибкам: проблемы с сетью, недоступность прокси, ошибки Git должны обрабатываться с отправкой соответствующего уведомления.
  • Логирование ключевых этапов выполнения для последующего анализа.
  • Конфигурация (список аккаунтов, параметры) должна выноситься в отдельный файл (например, JSON или YAML).
  • Код должен быть документирован и готов к запуску в автоматическом режиме (например, по расписанию через cron или планировщик задач).

Разработка чат-бота для кофейни на чистом Python

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