const express = require('express'); const { Zalo } = require('zca-js'); const BotController = require('./src/controllers/BotController'); const app = express(); app.use(express.json()); const PORT = 3000; // 1. Cấu hình thông tin đăng nhập Zalo (Lấy từ trình duyệt) // Mẹo: Bạn có thể đưa vào file .env sau này để bảo mật hơn const zaloConfig = { cookie: "YOUR_ZALO_COOKIE_HERE", // Thay bằng cookie thật imei: "YOUR_IMEI_HERE" // Thay bằng imei thật }; console.log("Đang khởi tạo Zalo Client..."); const zalo = new Zalo(zaloConfig); // 2. Khởi tạo Controller với Zalo Client const botController = new BotController(zalo); // 3. Đăng nhập và cấu hình API zalo.login().then(() => { console.log("✅ Đã đăng nhập Zalo thành công!"); // Khai báo API Endpoint để n8n gọi vào // Định tuyến (Route) POST /api/send sẽ do BotController xử lý app.post('/api/send', (req, res) => botController.sendMessage(req, res)); // Bật server Express app.listen(PORT, () => { console.log(`🚀 API Server đang chạy tại: http://localhost:${PORT}`); console.log(`👉 Bạn có thể cấu hình n8n gửi request về: http://localhost:${PORT}/api/send`); }); }).catch((err) => { console.error("❌ Đăng nhập Zalo thất bại. Vui lòng kiểm tra lại Cookie/IMEI:", err.message); });