Гарант-бот для сделок в Telegram с автоархивом чатов (ZIP)
Задача. Нужен Telegram-бот под гарант-сервис: создавать приватные комнаты сделки, фиксировать ход переписки, публиковать результат в канал и не оставлять «мусорных» чатов. Перед закрытием — сохранить весь диалог в архив.
Решение. Реализован связкой aiogram 3 + Telethon:
— бот создаёт приватную мегагруппу сделки с закрепом правил и баннером, добавляет участников;
— по кнопке «Завершить» публикует карточку в канал (есть анонимный режим);
— перед завершением автоматически делает ZIP-архив переписки: сообщения, фото/видео/доки, сервисные события, плюс meta.json и index.html для быстрого просмотра;
— комната удаляется/очищается по TTL (не висит у всех в списке диалогов).
Ключевые фичи
• Кнопка «Создать сделку» → приватная комната с правилами и баннером.
• Добавление покупателя/продавца/гаранта автоматически.
• Публикация итога в канал (обычно/анонимно) + баннер.
• ZIP-архив формата G-YYYY-XXXXXX.zip
– messages.ndjson, meta.json, index.html, папки media/ и files/.
• Очистка/удаление комнаты по времени (TTL).
• Статистика гаранта в постах (успешные / отменённые).
• Простая админка: заявки, сделки, шаблон текста /guarant, allow-list на создание.
• Настройки через .env, логи и защита от сбоев (таймауты/ретраи).
Решение. Реализован связкой aiogram 3 + Telethon:
— бот создаёт приватную мегагруппу сделки с закрепом правил и баннером, добавляет участников;
— по кнопке «Завершить» публикует карточку в канал (есть анонимный режим);
— перед завершением автоматически делает ZIP-архив переписки: сообщения, фото/видео/доки, сервисные события, плюс meta.json и index.html для быстрого просмотра;
— комната удаляется/очищается по TTL (не висит у всех в списке диалогов).
Ключевые фичи
• Кнопка «Создать сделку» → приватная комната с правилами и баннером.
• Добавление покупателя/продавца/гаранта автоматически.
• Публикация итога в канал (обычно/анонимно) + баннер.
• ZIP-архив формата G-YYYY-XXXXXX.zip
– messages.ndjson, meta.json, index.html, папки media/ и files/.
• Очистка/удаление комнаты по времени (TTL).
• Статистика гаранта в постах (успешные / отменённые).
• Простая админка: заявки, сделки, шаблон текста /guarant, allow-list на создание.
• Настройки через .env, логи и защита от сбоев (таймауты/ретраи).