Cara Membuat Bot Whatsapp Menggunakan Node Js Part 1

Cara Membuat Bot Whatsapp Menggunakan NodeJS - Part 1

Membuat Whatsapp BOT



Oke kali ini saya ingin memberikan tutorial tentang cara membuat Whatsapp BOT dengan menggunakan NodeJS, seperti contoh dibawah BOT saya yang memiliki fitur lebih dari 100. Sebelum memulai tutorialnya kalian harus install terlebih dahulu NodeJS v12.18.3 atau versi keatasnya, kalian bisa install NodeJS nya di di sini saya sarankan untuk menginstall yang LTS version.


Ditutorial kali ini saya anggap kalian sudah paham tentang apa itu NodeJS. Jika kalian memang belum paham tentang apa itu NodeJS, kalian bisa membacanya pada artikel dokumentasi di sini. Oke jika sudah siap, mari kita mulai tutorialnya.


Membuat Whatsapp BOT


Pertama kalian buka dahulu teks editor yang kalian miliki, disini saya memakai Visual Studio Code. Kemudian buka terminal untuk membuat project baru. Pertama kita akan membuat folder baru, yaitu dengan cara :

mkdir whatsapp-bot
cd whatsapp-bot

Fungsi cd tersebut ialah kita membuka folder yang telah kita buat / tersedia sebelumnya. Selanjutnya yaitu membuat file package.json, dengan cara :

npm init --yes

Untuk perintah --yes itu agar perintahnya membuat file package.json secara otomatis. Kemudian, disini saya akan menggunakan modules wa-automate-nodejs kalian bisa cek di sini. Untuk sekarang modulesnya sudah tersedia di npm jadi kalian bisa install dengan cara :

npm install --save @open-wa/wa-automate@latest

Untuk perintah --save bertujuan agar modules yang telah kita install diatas tersimpan didalam file package.json sebagai dependentcies. Dalam menginstall modules wa-automate-nodejs otomatis dia akan menginstall chromium yang terdapat pada puppeter jadi siapkan kouta anda karena filenya kurang lebih sebanyak 120Mb. Selanjutnya kita menginstall beberapa modules eslint yang nanti akan digunakan dalam mebuat Whatsapp BOT ini, yaitu dengan cara :

npm install --save-dev eslint babel-eslint eslint-config-standard eslint-plugin-promise eslint-plugin-import eslint-plugin-node eslint-plugin-standard

Untuk perintah --save-dev bertujuan agar modules yang telah kita install diatas tersimpat didalam file package.json sebagai devDependentcies, untuk mengetahui perbedaan dependentcies dengan devDependentcies silahkah kalian baca artikel ini. Setelah menginstall modules eslint diatas, kalian buat file dengan nama ".eslintrc.js" di folder project yang telah dibuat sebelumnya dengan isi sebagai berikut :

module.exports = {
    env: {
        commonjs: true,
        es6: true,
        node: true
    },
    extends: 'standard',
    globals: {
        Atomics: 'readonly',
        SharedArrayBuffer: 'readonly'
    },
    parserOptions: {
        ecmaVersion: 2018
    },
    rules: {
        eqeqeq: 0,
        indent: [2, 4],
        camelcase: 1,
        'no-var': 2,
        'no-unused-vars': 1,
        'no-unused-expressions': 0,
        'no-self-assign': 0,
        'no-undef': 0,
        'no-case-declarations': 0,
        'prefer-promise-reject-errors': 1,
        'object-property-newline': 0,
        'no-useless-escape': 0,
        'prefer-regex-literals': 0
    }
}

Jika sudah dibuat maka selanjutnya kalian membuat file "index.js" di folder yang telah dibuat sebelumnya untuk memasukan coding Whatsapp BOT kita, dengan code sebagai berikut :

const { create, Client } = require('@open-wa/wa-automate')

const start = (client = new Client()) => {
    console.log('User telah login!')
}

create({
    sessionId: 'Nama-Session',
    headless: true,
    qrTimeout: 0,
    authTimeout: 0,
    restartOnCrash: start,
    cacheEnabled: false,
    useChrome: true,
    killProcessOnBrowserClose: true,
    throwErrorOnTosBlock: false,
    chromiumArgs: [
        '--no-sandbox',
        '--disable-setuid-sandbox',
        '--aggressive-cache-discard',
        '--disable-cache',
        '--disable-application-cache',
        '--disable-offline-load-stale-cache',
        '--disk-cache-size=0'
    ]
}).then((client) => start(client)).catch((err) => new Error(err))


Untuk "Nama-Session" kalian ubah sesuai kalian, untuk membuat data session setelah kita menscan Kode QR pada terminal. Lalu jalankan perintah "node ." atau "node index.js" pada terminal, maka kita akan disuruh untuk menscan Kode QR pada terminal.

Membuat Whatsapp BOT

Buka Whatsapp di Handphone kalian, lalu buka menu Whatsapp Web scanlah Kode QR tersebut. Setelah menscan maka akan muncul tampilan di terminal "User telah login" dan sebuah file baru pada folder dengan nama "Nama-Session.data.json", itu membuat kita tidak akan menscan ulang ketika program akan dijalankan.


Selanjutnya kita akan membuat atau menggunakan BOT nya agar dapat menerima dan menjalankan perintah. Tunggu kelanjutannya di Part-2 ya. Terima-kasih telah membaca artikel ini, sampai jumpa lagi.

LihatTutupKomentar