Cara Membuat Bot WhatsApp Menggunakan WhatsApp Web.js di Node.js

Fathullah Munadi

Fathullah Munadi

9/7/2024, 10:17:41 AM

WhatsApp telah menjadi salah satu platform komunikasi paling populer di dunia, dan banyak bisnis serta individu yang ingin membuat bot untuk mengotomatisasi berbagai fungsi di aplikasi ini. Salah satu cara untuk membuat bot WhatsApp adalah dengan menggunakan WhatsApp Web.js, yaitu library yang memungkinkan kita mengendalikan sesi WhatsApp Web melalui Node.js.

Artikel ini akan membahas langkah-langkah membuat bot WhatsApp menggunakan WhatsApp Web.js di Node.js.

Apa Itu WhatsApp Web.js?

WhatsApp Web.js adalah sebuah library Node.js yang menyediakan API untuk berinteraksi dengan WhatsApp Web. Dengan library ini, Anda dapat membuat bot yang dapat mengirim dan menerima pesan, mengelola grup, serta menangani berbagai interaksi lain di WhatsApp secara otomatis.

Persiapan Sebelum Membuat Bot

Untuk memulai membuat bot WhatsApp menggunakan WhatsApp Web.js, Anda perlu menyiapkan beberapa hal:

  • Node.js: Pastikan Node.js sudah terpasang di komputer Anda. Jika belum, unduh dari nodejs.org.

  • WhatsApp Web.js: Library ini yang akan kita gunakan untuk berinteraksi dengan WhatsApp Web.

  • QRCode Terminal: Untuk memindai QR code dan mengautentikasi sesi WhatsApp.

  • Text Editor: Gunakan editor seperti Visual Studio Code untuk menulis kode.

Langkah-Langkah Membuat Bot WhatsApp

1. Instalasi Node.js dan Setup Proyek

Langkah pertama adalah membuat folder untuk proyek dan menginisialisasi proyek Node.js.

  1. Buka terminal atau command prompt.

  2. Buat folder proyek baru:

    ```
    mkdir whatsapp-bot cd whatsapp-bot
    ```
  3. Inisialisasi proyek Node.js:

    ```
    npm init -y
    ```

    Ini akan membuat file package.json di folder proyek Anda.

2. Instalasi WhatsApp Web.js dan Dependensi

Setelah proyek Node.js siap, Anda perlu menginstal whatsapp-web.js dan beberapa dependensi yang diperlukan.

Jalankan perintah berikut di terminal:

```
npm install whatsapp-web.js qrcode-terminal
```
  • whatsapp-web.js: Library utama untuk berinteraksi dengan WhatsApp Web.

  • qrcode-terminal: Digunakan untuk menampilkan QR code di terminal sehingga Anda bisa memindainya dengan WhatsApp.

3. Membuat File Kode Bot

Setelah instalasi selesai, buat file baru bernama index.js di folder proyek. File ini akan berisi kode utama untuk bot Anda.

Buka file index.js dan tulis kode berikut:

```
const { Client, LocalAuth } = require('whatsapp-web.js');
const qrcode = require('qrcode-terminal');

// Inisialisasi klien WhatsApp dengan LocalAuth untuk menyimpan sesi
const client = new Client({
    authStrategy: new LocalAuth()
});

// Event saat QR code diterima
client.on('qr', (qr) => {
    console.log('QR code diterima, pindai dengan WhatsApp.');
    qrcode.generate(qr, { small: true });
});

// Event saat terhubung
client.on('ready', () => {
    console.log('Bot siap digunakan!');
});

// Event saat pesan diterima
client.on('message', message => {
    console.log(`Pesan diterima: ${message.body}`);

    // Contoh respon otomatis
    if (message.body.toLowerCase() === 'hai') {
        message.reply('Hai! Apa kabar?');
    }
});

// Memulai klien
client.initialize();

```

Penjelasan Kode

  • Client: Objek ini digunakan untuk menginisialisasi sesi WhatsApp Web dan mengelola interaksi dengan WhatsApp.

  • LocalAuth: Digunakan untuk menyimpan sesi agar Anda tidak perlu memindai QR code setiap kali bot dijalankan.

  • client.on('qr'): Event ini dipicu ketika WhatsApp Web.js menerima QR code yang perlu dipindai dengan aplikasi WhatsApp di ponsel Anda.

  • client.on('ready'): Event ini dipicu ketika bot berhasil terhubung ke WhatsApp Web dan siap digunakan.

  • client.on('message'): Event ini dipicu setiap kali bot menerima pesan baru.

4. Menjalankan Bot WhatsApp

Setelah Anda menulis kode bot, sekarang saatnya menjalankan bot tersebut.

  1. Jalankan perintah berikut di terminal untuk menjalankan bot:

    ```
    node index.js
    ```
  2. Anda akan melihat QR code di terminal. Pindai QR code ini menggunakan aplikasi WhatsApp di ponsel Anda melalui fitur WhatsApp Web.

  3. Setelah berhasil memindai, Anda akan melihat pesan "Bot siap digunakan!" di terminal.

5. Menguji Bot

Sekarang bot Anda sudah aktif, coba kirim pesan ke nomor WhatsApp yang digunakan bot. Misalnya, kirim pesan "Hai", dan bot akan merespons secara otomatis dengan pesan "Hai! Apa kabar?".

Anda dapat menambahkan lebih banyak logika untuk membuat bot lebih canggih, seperti menambahkan fitur balasan otomatis, memproses pesan tertentu, atau bahkan mengelola grup WhatsApp.

Fitur Tambahan

Bot WhatsApp ini dapat diperluas dengan berbagai fitur tambahan, tergantung kebutuhan Anda:

  • Balasan otomatis: Anda bisa menambahkan lebih banyak kondisi pada client.on('message') untuk merespons berbagai pesan secara otomatis.

  • Kirim pesan ke grup: Bot bisa digunakan untuk mengirim pesan ke grup WhatsApp yang dikelola oleh bot.

  • Penjadwalan pesan: Gunakan Node.js untuk menjadwalkan pengiriman pesan pada waktu tertentu.

  • Integrasi dengan API: Anda dapat menghubungkan bot dengan API eksternal untuk mengambil data atau informasi yang relevan.

Contoh sederhana mengirim pesan otomatis berdasarkan perintah:

```
client.on('message', message => {
    if (message.body.toLowerCase() === 'info') {
        message.reply('Ini adalah bot WhatsApp yang dibuat menggunakan WhatsApp Web.js');
    }
});

```

Kesimpulan

Dengan WhatsApp Web.js, Anda dapat membuat bot WhatsApp yang efisien dan fungsional di Node.js. Bot ini mampu menerima dan mengirim pesan, serta dapat diperluas dengan berbagai fitur canggih sesuai kebutuhan Anda. Pembuatan bot ini memanfaatkan sesi WhatsApp Web yang diotomatiskan melalui API dari library tersebut.

Jika Anda ingin memperluas bot Anda, integrasikan dengan berbagai layanan dan tambahkan fitur interaktif untuk membantu keperluan komunikasi otomatis di WhatsApp.