Павел Дуглас pavelduglas
От идеи до работающего продукта — быстро и под ключ
Рейтинг
5 441
№ 259 в каталоге
Отзывы
0
Профессионализм
-/10
Коммуникация
- /10
Опыт работы
6 лет
На сайте с
2022 года
Юридический статус
Самозанятый
Freelance.Boutique
Премиум-сервис для лучших исполнителей

VK → Telegram + MAX Автопостинг

Используемые навыки Telegram API Twitter/Discord/Telegram

Описание

VK → Telegram + MAX Автопостинг — небольшой надёжный backend-сервис, который следит за стеной сообщества ВКонтакте и публикует каждый новый пост в Telegram-канал и чат MAX. Он обрабатывает текст, фотоальбомы, видео и ссылки и работает без присмотра на VPS через Docker.

Кросс-постинг одного и того же контента в несколько соцсетей — ровно та рутина, которую люди со временем перестают делать аккуратно. Заказчик публиковал сначала во ВКонтакте, а затем вручную перезаливал всё в Telegram и MAX. Посты выходили с опозданием, вложения терялись, а часть обновлений вовсе не доходила. Готовые мосты либо не поддерживали MAX, либо им нельзя было доверить медиа.

Решение

Сервис подписывается на Callback API ВКонтакте и реагирует на событие wall_post_new в момент появления поста — без медленного поллинга. Каждый пост нормализуется в текст и набор вложений, после чего рассылается в Telegram и MAX через их Bot API. Слой SQLite фиксирует каждый пост, чтобы ничего не публиковалось дважды, а статус partial позволяет повторить отправку только в ту сеть, где произошёл сбой, не дублируя пост целиком.

Результат

Режим VK Callback API (wall_post_new) с резервным поллингом через wall.get
Публикация текста, фотоальбомов, видео и ссылок в Telegram и MAX
Дедупликация в SQLite со статусом partial и автоматической повторной доставкой при сбое
Пропуск закреплённых постов и опциональный пропуск старого бэклога при первом запуске
Структурированные логи (pino) и эндпоинт /health для мониторинга
Деплой через Docker + docker-compose и CI/CD на VPS через GitHub Actions
Процесс разработки
Самым сложным были медиа: ВКонтакте, Telegram и MAX по-разному описывают вложения, а MAX требует загрузить файл до того, как на него сошлётся сообщение. Сервис скачивает медиа во временный каталог, загружает его под каждую платформу и повторяет временные ответы attachment.not.ready. Важен был и регион: Telegram Bot API не всегда доступен у российских VPS-провайдеров, поэтому деплой нацелен на VPS вне РФ.

Результаты

Новые посты ВК появляются в Telegram и MAX за секунды, без ручного труда
Дедупликация и повторы по каждой сети убрали и пропуски, и дубли
Полностью контейнеризирован: одна команда docker compose up поднимает сервис на чистом сервере
Руководство на русском для заказчика сделало систему управляемой без технических навыков

Выводы

Надёжность небольшой интеграции держится на скучных вещах: идемпотентности, обработке частичных сбоев и честном логировании. Модель «опубликовать в N целей и отслеживать каждую независимо» превратила хрупкое зеркало в сервис, который тихо делает свою работу.

Оценили проект:

Другие проекты

Все проекты →
Веб-разработка и IT Lakran — приватная криптовалюта и кошелёк
Lakran — приватная криптовалюта и кошелёк
9
Веб-разработка и IT VK → Telegram + MAX Автопостинг
VK → Telegram + MAX Автопостинг
8
Веб-разработка и IT Megascope — агрегатор нейросетей для генерации и поиска контента
Megascope — агрегатор нейросетей для генерации и поиска контента
11
Веб-разработка и IT «Новое Время» — корпоративный сайт мед- и образовательного центра
«Новое Время» — корпоративный сайт мед- и образовательного центра
8