Image for DymShop — Telegram-бот

DymShop — Telegram-бот

О проекте

Нативный Telegram-бот на Laravel для просмотра каталога и оформления заказов без перехода на сайт. Есть админка: товары, категории, заказы, пользователи бота, быстрые рассылки и входящие сообщения для поддержки.

Что сделал

  • Архитектура на Laravel 7 + irazasyed/telegram-bot-sdk: обработка апдейтов через вебхук, разнесение логики по «диалогам» (категории → список → товар → корзина → заказ).
  • Корзина и заказ: добавление/удаление позиций, подсчёт суммы, сбор телефона/адреса; уведомление админов на почту через jobs.
  • Гибкое меню из админки (TgButton) и рассылки (TgMailing) с отправкой изображений/документов; очереди для массовых отправок.
  • Панель администратора: CRUD для каталога, заказов и пользователей бота, просмотр входящих сообщений (TgInbox), настройки ответов.
  • Техническое: логирование в Telegram-канал, хранение медиа, вспомогательные сервисы для отправки сообщений и работы с файлами.

Зачем так

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

Итог

Рабочий магазин в формате бота: быстрый выбор товара, простое оформление и удобная поддержка, плюс полный контроль контента и кнопок из админки.

Как бы сделал сейчас

Обновил бы Laravel и свежей telegram-bot-sdk, вынес шаги заказа в отдельные сервисы с тестами и идемпотентностью, а отправку сообщений — целиком в очереди с бэкоффами и ретраями. Для админки — строгие права/аудит, а для бота — троттлинг и хранение состояния диалогов в кэше/БД.

Similar projects
Similar projects