# ربات تلگرام تریدر برتر 🤖📈

ربات فروش اشتراک **کانال سیگنال طلا و نفت** و **پکیج اندیکاتورهای اختصاصی**،
دقیقاً بر اساس محصولات و قیمت‌های وبسایت تریدر برتر.

پرداخت به دو روش:
- 💳 **تومانی** از طریق درگاه بانکی (قابل اتصال به زرین‌پال/نکست‌پی)
- 💵 **تتر (USDT)** روی شبکهٔ TRC20 با ارسال TXID و تأیید ادمین

تحویل خودکار پس از پرداخت: لینک کانال سیگنال یا فایل اندیکاتورها.

---

## 💰 محصولات و قیمت‌ها (مطابق وبسایت)

| محصول | قیمت | توضیح |
|---|---|---|
| اشتراک ماهانه | ۵٬۰۰۰٬۰۰۰ تومان | شروع بی‌ریسک |
| اشتراک سه‌ماهه | ۱۲٬۶۰۰٬۰۰۰ تومان | ۱۶٪ تخفیف |
| اشتراک شش‌ماهه ⭐ | ۲۲٬۵۰۰٬۰۰۰ تومان | ۲۵٪ تخفیف — محبوب‌ترین |
| اشتراک سالانه | ۴۰٬۰۰۰٬۰۰۰ تومان | ۳۳٪ تخفیف |
| پکیج اندیکاتورها | ۵٬۹۰۰٬۰۰۰ تومان | پرداخت یک‌بار |

---

## 🚀 راه‌اندازی سریع

```bash
# ۱) نصب پیش‌نیازها
pip install -r requirements.txt

# ۲) ساخت فایل تنظیمات
cp .env.example .env
#   سپس .env را ویرایش کنید (توکن ربات، آیدی ادمین، آدرس ولت و ...)

# ۳) اجرا
python bot.py
```

### گرفتن مقادیر لازم
| مقدار | از کجا |
|---|---|
| `BOT_TOKEN` | ربات @BotFather → دستور `/newbot` |
| `ADMIN_IDS` | ربات @userinfobot → آیدی عددی شما |
| `USDT_WALLET` | آدرس ولت TRC20 خودتان |
| `SIGNAL_CHANNEL_LINK` | لینک دعوت کانال خصوصی سیگنال |

---

## 🧭 تجربهٔ کاربری (UX)

```
/start
  └─ 🛒 خرید اشتراک و اندیکاتور
        └─ انتخاب محصول → نمایش قیمت تومان + معادل تتر + امکانات
              ├─ 💳 پرداخت تومانی → درگاه → تحویل خودکار
              └─ 💵 پرداخت تتر   → نمایش آدرس ولت → دریافت TXID
                                    → تأیید ادمین → تحویل خودکار
  └─ 📦 خریدهای من   (تاریخچهٔ خریدهای موفق)
  └─ ℹ️ راهنما
  └─ 💬 پشتیبانی
```

نکات UX پیاده‌شده:
- کل جریان با دکمه‌های شیشه‌ای (inline)، بدون تایپ دستی به‌جز TXID
- نمایش هم‌زمان قیمت تومان و معادل تتر روی هر محصول
- برچسب «⭐ محبوب‌ترین» روی پلن شش‌ماهه مثل وبسایت
- پیام‌های فارسی روان با اعداد فارسی
- اعلان لحظه‌ای به ادمین با دکمهٔ «تأیید/رد» برای پرداخت تتر
- تبدیل خودکار اعداد فارسیِ TXID به انگلیسی

---

## 🏗️ ساختار پروژه

```
traderbartar_bot/
├── bot.py          # هستهٔ ربات، هندلرها، کیبوردها، جریان پرداخت و تحویل
├── config.py       # تنظیمات + کاتالوگ محصولات (قیمت‌ها اینجاست)
├── payments.py     # درگاه تومانی (شبیه‌سازی/واقعی) + راهنمای تتر
├── db.py           # دیتابیس SQLite (کاربران و سفارش‌ها)
├── utils.py        # اعداد فارسی، فرمت قیمت، تبدیل تتر
├── requirements.txt
├── .env.example    # الگوی تنظیمات
└── assets/
    └── indicators.zip   # فایل اندیکاتورها را اینجا بگذارید
```

---

## 💳 فعال‌سازی درگاه واقعی تومانی

در حال حاضر `PAYMENT_MODE=simulate` است و پرداخت تومانی صرفاً شبیه‌سازی می‌شود.
برای اتصال به **زرین‌پال**:

1. در `.env` مقدار `PAYMENT_MODE=live` و `ZARINPAL_MERCHANT_ID` را قرار دهید.
2. در `payments.py` بلوک‌های کامنت‌شدهٔ `request_payment` و `verify_payment`
   را از حالت کامنت خارج کنید و `pip install requests` را اجرا کنید.
3. یک وب‌سرویس کوچک برای `callback_url` بالا بیاورید که پس از بازگشت از درگاه،
   `verify_payment` را صدا بزند و سپس تابع `deliver` را برای تحویل فراخوانی کند.

> بقیهٔ ربات بدون تغییر کار می‌کند؛ فقط همین دو تابع به API واقعی وصل می‌شوند.

---

## 🔒 امنیت و نکات

- فایل `.env` را هرگز در گیت commit نکنید (شامل توکن و کلیدهاست).
- برای تولید (production) از **وبهوک** به‌جای polling و از یک دیتابیس
  قوی‌تر (مثل PostgreSQL) استفاده کنید.
- برای تحویل امن‌تر کانال، به‌جای لینک ثابت می‌توانید با
  `create_chat_invite_link(member_limit=1)` لینک یک‌بارمصرف بسازید
  (نیازمند ادمین‌بودن ربات در کانال).
- پرداخت تتر به‌صورت **تأیید دستی** طراحی شده؛ برای تأیید خودکار می‌توانید
  بعداً از API شبکهٔ Tron (مثل TronGrid) برای بررسی TXID استفاده کنید.

---

## 🧪 تست بدون توکن واقعی

منطق پایه (دیتابیس، قیمت‌ها، تبدیل تتر) بدون اتصال به تلگرام قابل تست است؛
کافی است ماژول‌ها را import کرده و توابع `db` و `payments` را صدا بزنید.
