Высоконагруженный сервис на базе Telegram-бота, который в автоматическом режиме скупает новые коллекционные Telegram-подарки (Telegram Gifts) в момент их выхода. Особенность ниши в том, что лимитированные подарки распродаются за считанные секунды после релиза, поэтому ключевая ценность продукта заключается в скорости реакции и способности мгновенно совершать покупки сразу для всей базы подписчиков по индивидуальным правилам каждого. Продукт включает в себя самого бота с платежной логикой на Telegram Stars, многоуровневую реферальную программу, интеграцию с криптокошельком TON и административную веб-панель.
Спроектирован сервис как единое ASP.NET Core приложение, в котором сосуществуют четыре независимых контура: Telegram-бот, фоновый планировщик автопокупки, платежный модуль и административная панель. Такой моноблок при правильном разделении ответственности дал минимальные задержки между обнаружением подарка и исполнением сделки, поскольку вся логика работает в одном процессе без сетевых накладных расходов между сервисами.
Ядром продукта стал контур автопокупки на базе планировщика Quartz с двумя независимыми циклами: быстрый цикл с интервалом в 5 секунд отвечает за обнаружение новых подарков и исполнение покупок, медленный минутный цикл агрегирует метрики и обслуживает кэш состояния. Каждое задание помечено атрибутом запрета параллельного запуска, что исключает гонки и двойные списания при затянувшемся цикле.
Пользователь управляет всем через диалог с ботом: задает нижнюю и верхнюю границу цены подарка, включает или выключает автопокупку одним переключателем, пополняет баланс и приглашает друзей. Вся настройка происходит через inline-клавиатуры с пошаговым вводом, состояние диалога хранится по идентификаторам ожидаемых полей, что позволяет вести несколько сценариев ввода без потери контекста.
Платежный модуль принимает Telegram Stars через нативные инвойсы Telegram, удерживает сервисную комиссию 5 процентов и моментально зачисляет средства на внутренний баланс пользователя с мгновенным уведомлением. Реферальная программа реализована двухуровневой, с начислением процента от пополнений приглашенных.
- Запущен полностью рабочий коммерческий сервис, который в автоматическом режиме скупает новые Telegram-подарки в первые секунды после релиза без участия пользователя.
- Достигнута реакция на появление подарка в пределах 5-секундного цикла с параллельным исполнением покупок сразу для всей активной базы при одном релизе.
- Реализован замкнутый денежный контур: пополнение в Telegram Stars, удержание комиссии, моментальное зачисление, двухуровневая реферальная программа и таблица лидеров для удержания аудитории.
- Гибридная схема работы с данными обеспечила высокую пропускную способность горячего пути при сохранении удобства миграций и эволюции схемы.
- Автоматические миграции при старте сделали выкатку новых версий бесшовной, без ручных операций с базой.
- Архитектура с изоляцией контуров и отказоустойчивой обработкой ошибок обеспечила стабильную работу планировщика под нагрузкой и устойчивость к точечным сбоям.
- Полная двуязычная локализация открыла продукт для русско- и англоязычной аудитории одновременно.