The most powerful Telegram Uploader / Downloader bot.
Smooth like butter · Futuristic · Professional · DRM & Non-DRM — A to Z.
| Category | What it does |
|---|---|
| 📄 TXT Leech | Extract & upload every video / pdf link from a .txt file |
| 🔐 DRM Decrypt | Widevine / ClearKey DRM streams via mp4decrypt (Bento4) |
| 🎞️ Non-DRM | HLS (m3u8), MPD, direct MP4, YouTube, and more |
| 🎬 YouTube | /y2t (YT → txt), /ytm (YT → mp3), cookies support |
| 📝 Converters | /t2t (text → txt), /t2h (txt → html) |
| 💧 Watermark | Custom video watermark text overlay |
| 🎚️ Quality | 144p → 1080p selectable per session |
| 👥 Premium System | /add, /remove, /users, /plan with expiry tracking |
| 📢 Broadcast | /broadcast text/photo/video/doc to all users |
| 📊 Live Health | Futuristic auto-refreshing status dashboard |
Users
/start Bot status check & welcome
/y2t YouTube → .txt converter
/ytm YouTube → .mp3 downloader
/t2t Text → .txt generator
/t2h .txt → .html converter
/stop Cancel running task
/cookies Update YT cookies
/id Get chat / user ID
/info User details
/logs View bot activity
Owner / Admin
/add <id> <days> Grant premium access
/remove <id> Revoke access
/users List all premium users
/broadcast Reply to a msg to broadcast it
/broadusers List all broadcasting users
/reset Reset & re-register commands
Copy .env.example → .env and fill in:
| Variable | Required | Description |
|---|---|---|
API_ID |
✅ | From https://my.telegram.org |
API_HASH |
✅ | From https://my.telegram.org |
BOT_TOKEN |
✅ | From @BotFather |
OWNER / OWNER_ID |
✅ | Your numeric Telegram ID |
OWNER_ID2 |
⬜ | Second admin ID |
MONGO_URL |
✅ | MongoDB Atlas connection string |
DATABASE_NAME |
⬜ | Default: eagle |
CREDIT / CREDIT_LINK |
⬜ | Branding |
- Create app → set stack to
container - Add all env vars above
- Deploy this repo, then scale the worker dyno:
heroku stack:set container -a your-app git push heroku main heroku ps:scale worker=1 -a your-app
- Use the included
render.yaml(Docker-based web service).
pip install -r sainibots.txt
cp .env.example .env # fill in values
python3 modules/main.pyOnce deployed, open your app URL to see a live, glassmorphic status page:
- ✅ green = bot connected (shows username, ID, uptime)
- ⏳ amber = still starting
- ❌ red = connection error (with reason)
GET /health returns JSON for uptime monitors.
modules/
├── main.py ← entry point, all command/callback handlers
├── auth.py ← premium user management
├── broadcast.py ← broadcast engine
├── db.py (root) ← MongoDB layer
├── drm_handler.py ← DRM decrypt engine (Widevine/ClearKey)
├── saini.py ← core download/upload helper
├── html_handler.py ← .txt → .html
├── youtube_handler.py ← YouTube/cookies
├── text_handler.py ← text → .txt
├── topic_handler.py ← topic-in-caption logic
├── utils.py ← progress bar & helpers
└── vars.py ← config & message templates
🦅 Built for speed. Tuned for power. Smooth like butter.