Рейтинг: 1 444
не верифицирован
Всего отзывов: 0
  • Работ в портфолио: 2
  • Типовых услуг: 1
  • Работ на продажу: 0
Был на сайте:

EasyPost - планировщик постов для Telegram (веб-сервис + админка)

Описание

Клиенту нужна была веб-платформа для планирования и автоматической публикации постов в Telegram, чтобы вести каналы системно, без ручной рутины и без зависимости от одного бота/одного админа.

Цель: получить рабочий сервис, где можно:

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

Что именно просил реализовать заказчик (функциональные требования)
1) Подключение Telegram и управление сущностями
- подключение нескольких Telegram-ботов по токенам
- управление каналами/чатами, где бот админ
- синхронизация и проверка прав/вебхуков

2) Публикации и контент
- создание постов с поддержкой текста + медиа (фото/видео/несколько вложений)
- черновики, предпросмотр перед отправкой
- настройки превью ссылок/форматирования

3) Планирование (ключевой сценарий)
- календарь отложенных постов
- создание/редактирование запланированных публикаций
- перенос/удаление, массовые операции (если нужно)

4) Надёжная отправка через очереди
- отдельный воркер, который обрабатывает отправку по расписанию
- retry-механизм при ошибках, dead-letter queue для “упавших” задач
- rate limiting, чтобы не ловить лимиты Telegram API

5) Роли и доступ
- ролевая модель (например: Admin / Editor / User)
- ограничение доступа к админ-разделам и операциям

6) Админ-панель и мониторинг
- управление пользователями (блокировки/поиск)
- мониторинг очередей: статистика, повтор задач, очистка
- health-статусы сервисов, инциденты/логирование

7) Технические требования
- REST API с документацией (Swagger/OpenAPI)
- контейнеризация и готовность к деплою (Docker/Docker Compose)
- хранение медиа (локально или объектное хранилище/S3-совместимое)

Решение

Для решения задачи я спроектировал и реализовал систему как набор сервисов с разделением ответственности: веб-интерфейс, backend API и отдельный worker для фоновой отправки сообщений.

Спроектировал архитектуру и модель данных
Определил ключевые сущности (боты, каналы, посты, медиа, пользователи, роли), статусы публикаций и сценарии: черновик → планирование → отправка → успешная доставка/ошибка.

Реализовал backend API и интеграцию с Telegram
Сделал REST API для управления ботами, каналами и постами, добавил валидацию входных данных и обработку типовых ошибок Telegram. Подключил Swagger/OpenAPI для удобной документации и тестирования.

Вынес отправку постов в очередь и отдельный worker
Чтобы публикации были надёжными и не зависели от нагрузки веб-приложения, реализовал обработку через Redis + BullMQ: плановые задачи попадают в очередь, worker отправляет сообщения и фиксирует результат.

Добавил устойчивость: повторы, лимиты, dead-letter
Настроил retry-механизм при сбоях, ограничение скорости отправки (rate limiting) под лимиты Telegram API и dead-letter очередь для задач, которые не удалось выполнить после всех попыток.

Сделал удобный интерфейс планирования
Реализовал календарь отложенных постов, создание/редактирование черновиков и запланированных публикаций, а также сценарии переноса/удаления и контроля статуса отправки.

Реализовал роли и доступы (RBAC)
Добавил разграничение прав (администратор/редактор/пользователь) и защитил критичные операции и административные разделы.

Добавил мониторинг и админ-инструменты
Сделал административные экраны для контроля пользователей, очередей и инцидентов: просмотр состояния, повтор задач, диагностика, health-check.

Подготовил к развёртыванию
Контейнеризировал сервисы (Docker/Docker Compose), настроил конфигурацию через переменные окружения и обеспечил возможность запуска на сервере.

Результат

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

Ссылки на примеры реализации

 stage.easyposty.com

Презентация проекта

изображение_2026-02-06_195552944.png
изображение_2026-02-06_195709442.png
изображение_2026-02-06_195725357.png
изображение_2026-02-06_195742564.png
изображение_2026-02-06_195439688.png
изображение_2026-02-06_195515035.png

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

0