WHATSAPP API PORTAL — FINAL VERSION 3 (Hosting साठी पूर्ण code)
=================================================================
यात 2 भाग:
  portal/   -> PHP portal (Users, Admin, Plans, Subscription, Devices, QR/Key, API, Bulk, Anti-Ban)
  gateway/  -> Node.js WhatsApp engine (VPS वर, Node 18+)

---------------- STEP 1: Database ----------------
cPanel > MySQL Databases > नवीन database + user बनवा.
phpMyAdmin > database निवडा > Import > portal/database.sql
(Monthly / 3 Months / 6 Months हे 3 plans आपोआप तयार होतात — Admin मधून बदला.)

---------------- STEP 2: Portal Upload ----------------
portal/ मधील सर्व files public_html/portal मध्ये upload करा.
portal/config.php उघडा आणि बदला:
  DB_HOST, DB_NAME, DB_USER, DB_PASS
  GATEWAY_URL     = http://VPS-IP:3000
  GATEWAY_SECRET  = कोणतीही मोठी गुप्त string (gateway/.env मध्ये तीच)
  BASE_URL        = https://yourdomain.com/portal
  UPI_ID          = तुमचा UPI ID (user payment साठी)
PHP 7.4+ (8.x उत्तम), curl, pdo_mysql extension लागतात.

---------------- STEP 3: पहिला Admin ----------------
https://yourdomain.com/portal/install.php उघडा -> Admin तयार करा
नंतर install.php file server वरून DELETE करा (महत्वाचे!)

---------------- STEP 4: Gateway (VPS) ----------------
cd gateway
cp .env.example .env     (GATEWAY_SECRET व PORTAL_INCOMING_URL भरा)
npm install
npm install -g pm2
pm2 start server.js --name wa-gateway
pm2 save && pm2 startup
Firewall: port 3000 फक्त तुमच्या hosting server च्या IP साठी open ठेवा.

---------------- STEP 5: Cron (cPanel > Cron Jobs, दर मिनिटाला) ----------------
* * * * * php /home/USERNAME/public_html/portal/cron_bulk.php

=================================================================
कसे काम करते
=================================================================
ADMIN:
  - Admin Dashboard: users, active subscribers, pending requests, कमाई, संपणारे plans
  - Plans: Monthly / 3 Months / 6 Months / Yearly / Trial — price, max devices ठरवा
  - Users: Admin स्वतः user add करू शकतो (plan सोबत), block, password बदल, plan द्या/बंद करा
  - Subscriptions: user च्या payment request (UTR) Approve / Reject

USER:
  - Website वरून स्वतः Register करू शकतो
  - Subscription पानावर plan निवडतो -> UPI ने पैसे भरतो -> UTR टाकतो
  - Admin approve केल्यावर plan चालू होतो (आधीचा plan असेल तर मुदत पुढे वाढते)

SUBSCRIPTION नसेल तर (किंवा संपला तर):
  - Device add होणार नाही
  - QR Code / Key दिसणार नाही -> "कृपया आधी Subscription घ्या" error
  - Website API मधून message जाणार नाही (Subscription expired error)
  - Bulk campaign pause होतो, plan चालू झाल्यावर पुन्हा सुरू होतो
  - Plan नुसार Max devices मर्यादा

MESSAGE पाठवणे:
  1) Website Integration (api/send.php) = INSTANT
     OTP, Password reset, Order — लगेच 1-2 सेकंदात. कोणताही delay नाही.
  2) Portal Bulk = पूर्ण Anti-Ban
     Random delay, Typing, दर 10 message नंतर 1-2 मिनिट break, Hourly/Daily limit,
     Warm-up, Working hours, Spintax {Hi|Hello}, Duplicate block, Blacklist,
     STOP reply -> आपोआप Blacklist.

API वापर (Device > API / Doc मधून .doc file download करा):
  https://yourdomain.com/portal/api/send.php?api_key=KEY&number=919876543210&message=Hello
  type = text | image | document | video | audio,  media_url = file चा public URL

टीप: हे unofficial WhatsApp Web पद्धत आहे. 100% ban-proof काहीच नसते —
फक्त परवानगी दिलेल्या ग्राहकांनाच message पाठवा.
