# Juaskill Bot - Platform Simulation Orchestrator Bot ini dirancang untuk mensimulasikan aktivitas nyata di platform Microjob (membuat akun, membuat layanan, dan melakukan transaksi) menggunakan data cerdas yang dihasilkan oleh AI (OpenRouter). ## 🚀 Fitur Utama - **Dual Flow Simulation**: Mendukung simulasi transaksi **Layanan** (pembelian langsung) dan **Lowongan** (post job -> lamar -> terima). - **AI-Driven Data**: Menggunakan OpenRouter (Gemini/Llama) untuk menghasilkan persona Indonesia yang realistis. - **Natural Behavior**: Meniru perilaku manusia dengan jeda waktu acak dan pengacakan urutan transaksi. - **Automated Transactions**: Melewati gerbang pembayaran untuk memudahkan pengisian data internal. ## 🛠️ Instalasi 1. Pastikan Anda memiliki Python 3.8+ terinstal. 2. Masuk ke direktori bot: ```bash cd bot ``` 3. Instal semua dependensi: ```bash pip install -r requirements.txt ``` ## ⚙️ Konfigurasi (.env) Buat file `.env` (salin dari `.env.example`) dan isi variabel berikut: ```env OPENROUTER_API_KEY=your_key_here BOT_API_SECRET=your_backend_bot_secret BACKEND_URL=http://localhost:3001/api TRANSACTION_TYPES=SERVICE,JOB COUNT_PER_TYPE=1 ``` - `OPENROUTER_API_KEY`: Kunci API dari [OpenRouter](https://openrouter.ai/). - `BOT_API_SECRET`: Kunci rahasia yang **harus sama** dengan yang ada di `.env` backend Anda. - `TRANSACTION_TYPES`: Tipe transaksi yang ingin dijalankan (`SERVICE`, `JOB`, atau keduanya dipisah koma). - `COUNT_PER_TYPE`: Berapa kali setiap tipe transaksi dijalankan dalam satu kali running. ## 🏁 Cara Menjalankan ### Jalankan Sekali (On-Demand / Cron Job) Untuk menjalankan simulasi sesuai jumlah di `.env` lalu berhenti: ```bash python main.py ``` ### Jalankan Sebagai Background Service (VPS) Anda bisa menggunakan **PM2** agar bot ini berjalan terus dan otomatis restart jika terjadi error: ```bash pm2 start main.py --name "microjob-bot" --interpreter python3 ``` ## 📂 Struktur Folder - `main.py`: Orkestrator utama alur bisnis bot. - `ai_generator.py`: Modul untuk berinteraksi dengan OpenRouter AI. - `requirements.txt`: Daftar pustaka Python yang dibutuhkan. - `.env.example`: Contoh file konfigurasi lingkungan. ## ⚠️ Catatan Keamanan Pastikan endpoint `/api/bot/*` di backend hanya dapat diakses menggunakan `BOT_API_SECRET` yang kuat untuk mencegah penyalahgunaan oleh pihak luar.