Bot WhatsApp kini menjadi alat penting dalam dunia bisnis digital dan otomatisasi layanan pelanggan. Dengan bot, Anda bisa menjawab pertanyaan secara otomatis, mengirim notifikasi, atau bahkan mengelola pesanan. Untuk memastikan bot berjalan 24/7 tanpa gangguan dari perangkat lokal, solusi idealnya adalah menjalankan bot tersebut di VPS (Virtual Private Server).
Dalam artikel ini, Anda akan dipandu langkah demi langkah bagaimana cara menjalankan bot WhatsApp di VPS, mulai dari persiapan server hingga bot aktif dan berjalan otomatis.
Persiapan Awal
Sebelum memulai, siapkan hal-hal berikut:
- VPS aktif (misalnya dari DigitalOcean, Vultr, Linode, dll)
- Akses root atau sudo ke VPS
- Sistem operasi Linux (disarankan Ubuntu 22.04)
- Bot WhatsApp berbasis Node.js (misalnya yang menggunakan library
whatsapp-web.js
,baileys
, atauvenom-bot
) - SSH client (misalnya terminal Linux atau PuTTY di Windows)
Akses ke VPS
Buka terminal dan login ke VPS Anda:
ssh root@IP_VPS
Jika Anda menggunakan user non-root, tambahkan sudo
di setiap perintah berikutnya.
3. Update Sistem VPS
Selalu update sistem sebelum instalasi:
sudo apt update && sudo apt upgrade -y
Instal Node.js dan npm
Bot WhatsApp umumnya dibuat menggunakan Node.js. Instal Node.js LTS (versi stabil):
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt install -y nodejs
Cek versi:
node -v
npm -v
Instalasi Git (Jika Perlu)
Jika Anda akan meng-clone bot dari GitHub:
sudo apt install git -y
Clone bot Anda ke VPS:
git clone https://github.com/username/nama-repo-bot.git
cd nama-repo-bot
Jika Anda menulis bot sendiri, cukup upload ke VPS via SFTP atau SCP.
Instalasi Dependensi Bot
Di direktori bot, jalankan:
npm install
Pastikan file seperti package.json
sudah ada di dalam folder.
Menjalankan Bot untuk Pertama Kali
Jalankan bot:
node index.js
Biasanya saat pertama kali dijalankan, akan muncul QR code di terminal untuk dipindai menggunakan aplikasi WhatsApp di HP Anda. Setelah berhasil, sesi akan tersimpan.
Menjaga Bot Tetap Aktif di Latar Belakang
Agar bot tetap berjalan walau terminal ditutup atau Anda logout dari SSH, gunakan proses manager seperti PM2.
Instal PM2:
sudo npm install -g pm2
Jalankan bot dengan PM2:
pm2 start index.js --name bot-wa
Simpan konfigurasi agar otomatis berjalan saat VPS restart:
pm2 startup
pm2 save
Dengan ini, bot Anda akan otomatis berjalan ulang jika VPS direstart.
Menyimpan dan Mengelola Sesi
Jika menggunakan whatsapp-web.js
, sesi biasanya disimpan dalam file .json
. Pastikan direktori tempat penyimpanan sesi tidak dihapus saat restart atau update. Gunakan .gitignore
agar file sesi tidak ikut terhapus saat update project.
Menambahkan Fitur dan Pengamanan
Setelah bot aktif, Anda bisa:
- Menambahkan log aktivitas
- Membatasi pengguna (menggunakan nomor whitelist)
- Menyimpan database pengguna (dengan MongoDB, Firebase, atau JSON)
Jangan lupa juga:
- Gunakan firewall (
ufw
) untuk membatasi port yang terbuka - Backup data secara berkala
- Gunakan VPS yang stabil dengan uptime tinggi
Otomatisasi Deployment (Opsional)
Jika Anda ingin bot otomatis terupdate saat Anda push ke GitHub, Anda bisa menambahkan webhook atau menggunakan tools seperti GitHub Actions, CI/CD pipelines, atau cron job untuk menarik update dari repo.
Error Handling
Jika bot berhenti atau error:
- Cek log menggunakan PM2: bashCopyEdit
pm2 logs bot-wa
- Restart bot: bashCopyEdit
pm2 restart bot-wa
Alternatif Lain: Gunakan Docker
Jika Anda familiar dengan Docker, Anda bisa membungkus bot WhatsApp dalam container untuk manajemen lebih baik, terutama jika menjalankan banyak layanan sekaligus di VPS.
Penutup
Menjalankan bot WhatsApp di VPS memungkinkan Anda menjaga layanan tetap aktif tanpa harus tergantung pada komputer lokal atau HP. Dengan VPS, Anda punya kontrol penuh, fleksibilitas tinggi, dan efisiensi biaya dalam jangka panjang.
Langkah-langkah di atas bisa diterapkan untuk hampir semua jenis bot WhatsApp berbasis Node.js. Jika Anda ingin menjalankan bot berbasis Python, Java, atau Go, proses dasarnya hampir sama, hanya berbeda di lingkungan runtime-nya.