Skip to content

bjkawecki/PromoBot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PromoBot – Telegram Bot for Product Promotions

image image AWS S3 image image

logo

PromoBot is a modular Telegram bot built with aiogram, designed to help sellers create and manage product promotions, while offering buyers a simple and interactive shopping experience via Telegram. Admins can oversee platform activity and manage users.

Features

  • Role-based behavior: Admin, Seller, Buyer
  • Sellers can create, manage, and activate promotions
  • Inline keyboard navigation with callback handlers
  • FSM (Finite State Machine) for multi-step input flows
  • Media upload support via AWS S3
  • DynamoDB for data persistence

Project Structure

src/
├── database/ # DynamoDB setup & repository layer
├── handlers/ # Message & callback handlers grouped by role
├── keyboards/ # Inline and reply keyboard generation
├── messages/ # Predefined texts and message templates
├── services/ # AWS S3 and other external integrations
├── states/ # FSM state definitions per role
├── utils/
├── config.py # Global configuration & constants
├── main.py
└── middleware.py

Prerequisites

  • Python 3.13
  • A Telegram bot token
  • AWS credentials (for S3)
  • DynamoDB (hosted or local)

Usage Overview (in progress)

Seller Flow

  1. Seller gets activated by an admin
  2. Seller registers via the bot (FSM-guided)
  3. Promo details (title, image, price) are submitted
  4. Media is uploaded to AWS S3
  5. Inline buttons allow promo management and sharing

Buyer Flow

  1. Tap on inline buttons to see more info
  2. Initiate order

Admin Flow

  1. Approve or deactivate sellers
  2. Manage sellers and view promos

Tech Stack

  • aiogram – Telegram bot framework
  • boto3 – AWS SDK for Python
  • Terraform for infrastructure
  • DynamoDB – NoSQL database
  • S3 for promo images

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published