Сохранение постов из телеграм каналов+отправка платящим пользователям

200 000 руб. за проект
17 апреля 2024, 16:55 • 17 откликов • 175 просмотров
Нужен: middle PHP backend developer с опытом работы с MadelineProto, Docker-compose, yii2 (последнее - желательно, чтобы не переписывать то что уже есть; в ином случае - Laravel).

К заявке прикрепите ссылку на github профиль (или релевантные репозитории)!

Стек: PHP (yii2), MySQL, Redis, Docker, nginx

Основные компоненты:

  • Telegram бот, управляется через Nutgram на вебхуках, отвечает за "рендер" всего интерфейса и доставку сигналов до пользователя (отправка через очередь на Redis, чтобы не ловить FLOOD_WAIT) - частично реализовано:
  • Telegram клиент, управляется через MadelineProto, отвечает за "сбор" и сохранение сигналов с ~100 каналов - не реализовано
  • Telegram канал как интерфейс для отправки кастомных сообщений пользователям (если нужно написать всем пользователям какое-то объявление, оно постится в канал, его подхватывает бот и шлёт всем юзерам, ну прост чтоб не возиться с интерфейсом для редактирования поста) - уже реализовано
  • Система учёта каналов и портфолио каждого канала с возможностью фильтрации и расчёта параметров прибыльности за заданный интервал (формула простая) - не реализовано
  • Учёт подписчиков канала (отслеживание по инвайт ссылке) и пользователей бота (по диплинку) для маркетинговой аналитики (саму аналитику не нужно) - не реализовано
  • Система работы с подписками: создание счётов, процессинг оплат, продление подписки, ограничение доступа при неактивной подписке. Используется 2 провайдера с простеньким API с вебхуками. Создание счетов, процессинг оплат уже частично реализовано.
На текущий момент есть docker-compose с сервисами:

  • nginx
  • php (yii2)
  • mysql
  • ftp
  • phpmyadmin
  • redis
  • certbot
Таблицы:

  • Clients
  • SourceChannels: для каналов, из которых берём сигналы
  • Signals: для сообщений из этих каналов
  • Portfolio: для хранения статистических данных и расчёта рейтинга
  • Bills: для счетов на оплату
  • PromoCodes: для хранения промокодов (используются в deeplink, нужно для учёта источников пользователей)
Срок выполнения: до 30 дней