Membuat dan Host Discord Bot di Replit Gratis

Saat ini saya sedang memiliki kesukaan untuk membuat discord bot. Banyak kegunaan discord bot untuk server kita, seperti mengatur server, membuat game
DiscordJS

Saat ini saya sedang memiliki kesukaan untuk membuat discord bot. Banyak kegunaan discord bot untuk server kita, seperti mengatur server, membuat game, memutar lagu, dsb. Namun saat ini saya fokus membuat discord bot untuk membantu kuliah ketika ada soal hitung-hitungan yang berulang-ulang.

Banyak bahasa yang disediakan untuk membuat discord bot. Namun yang menurut saya mudah dan sudah saya pahami adalah JavaScript dengan menggunakan DiscordJS.

Untuk membuat dan menggunakan DiscordJS cukup mudah. Cukup buka Youtube dan cari tutorialnya, lalu tinggal di-implementasikan. Masalah utama setelah berhasil membuat bot adalah melakukan hosting.

Pertama kali saya mencoba hosting dengan Heroku dan berhasil. Namun bot saya hanya dapat online sekitar 3/4 bulan saja. Selebihnya bot saya akan mati. Akhirnya saya coba beralih dengan Replit. Bot saya bisa berjalan 24/7 non-stop dan gratis.


Pengantar

Dibutuhkan

  • Replit
  • DiscordJS v13
  • NodeJS v16
  • Discord Bot Account

Langkah-Langkah

 

1. Buat Discord Bot

  • Buka https://discordapp.com/developers/applications/me lalu pilih New Application.
  • Berikan nama bot lalu pilih Create.
  • Atur Deskripsi dan gambar bot sesuai keinginan lalu pergi ke tab Bot
  • Click Add Bot lalu click Yes, do it!.
  • Setelah berhasil membuat bot yang perlu diperhatikan adalah TOKEN pada tab bot yang nanti akan kita gunakan untuk menghubungkan bot dengan codingan kita.

Perlu diperhatikan bahwa TOKEN bot bersifat sangat rahasia dan tidak boleh di share ke public. Saya pernah mencoba push di github dan token tersebut langsung diganti oleh deteksi dari discord.

 

2. Buat Akun dan Initiate Replit

  • Pergi ke https://replit.com/ lalu buat akun atau login.
  • Pada halaman dashboard Replit, click New Repl.
  • Pada bagian language pilih Node.js. Berikan nama bot lalu click Create repl
  • Anda akan dihadirkan pada halaman replit IDE.

 

3. Install Node Versi Terbaru

Sebelum anda mulai coding bot anda. Ada beberapa hal yang perlu disetting terlebih dahulu.

Yang pertama adalah install node versi terbaru. DiscordJS v13 ( terbaru saat ini ) memerlukan node versi terbaru, namun Replit sendiri hanya menyediakan node versi lama. Tapi tenang, kita dapat mengganti versi node menjadi terbaru.

Pergi ke tab shell di bagian kanan, lalu ketik command berikut:

1
npm i node@latest

Buat sebuah file dengan nama .replit lalu isi dengan code berikut:

1
run="npm start"

Terakhir pergi ke file package.json lalu cari pada bagian "scripts" dan ganti menjadi seperti berikut:

1
2
3
4
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node ."
},

Maka Replit anda sudah diupdate menjadi node versi terbaru.

 

4. Setting Environment Untuk Token Bot

Masih ingatkah anda bahwa token bot bersifat sangat rahasia? Masalahnya adalah semua codingan kita di Replit versi gratis akan bersifat public tidak seperti github yang memberikan pilihan private.

Tentu jika kita langsung melempar token kita ke dalam codingan maka akan dapat dilihat orang lain dan berbahaya untuk bot dan server kita.

Oleh karena itu kita memanfaatkan fitur Environment Variabel dari Replit untuk menyimpan token kita karena pada variabel tersebut semua key kita tidak akan muncul pada proses manapun sama seperti jika kita menggunakan file .env.

Untuk mengambil token bot :

Untuk membuat Environment Variabel:

  • Caranya adalah pergi ke tab Secrets (Environment Variabel) di sebelah kiri bergambar gembok.
  • Lalu pada bagian key isi dengan nama variabel untuk Token kita. Contoh saya akan isi dengan nama TOKEN.
  • Lalu pada bagian value isi dengan token bot kita.

Maka Token bot kita sudah aman dan tidak akan di share ke siapapun.

 

5. Coding Bot Sederhana

Setelah selesai mensetting Replit kita maka kita tinggal melakukan coding untuk bot kita.

Pada file index.js isi dengan codingan berikut:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
const { Client, Intents } = require('discord.js');

const mySecret = process.env['TOKEN']

// Create a new client instance
const client = new Client({ intents: [Intents.FLAGS.GUILDS] });

// When the client is ready, run this code (only once)
client.once('ready', () => {
console.log('Ready!');
});

client.on("message", (message) => {
if (message.content.startsWith("ping")) {
message.channel.send("pong!");
}
});

// Login to Discord with your client's token
client.login(mySecret);

Pada codingan di atas berfungsi sederhana yaitu mengampilkan pesan “pong!” jika kita mengetik “ping” di channel server.

Untuk informasi lebih lanjut bisa membaca di DiscordJs Docs atau melihat tutorial di Youtube.

Click Tombol RUN pada bagian atas dan bot kita akan dijalankan. Jika pada bigian console sebelah kanan terdapat tulisan Ready! tanpa pesan error maka kita berhasil membuat dan menjalankan bot kita.

Langkah selanjutnya adalah menginvite bot kita ke server lalu melakukan testing dengan mengirim “ping” dan melihat apakah muncul respon dari bot kita.

 

6. Menjalankan Bot 24/7 dengan UpTimeRobot

Perlu diketahui Replit hanya akan menjalankan codingan kita selama 30 menit jika sudah tidak mendapat perintah atau respon.

Berbeda dengan web yang dijalankan dengan Replit, setelah 30 menit akan masuk ke dalam mode sleep. Triknya adalah mengubah codingan kita ke dalam bentuk web lalu kita akan menggunakan UpTimeRobot untuk memberikan respon sehingga bot tidak masuk ke mode sleep.

Kita memilih UpTimeRobot karena gratis dan sama sekali tidak diberi batasan.

Untuk melakukannya, pertama kita stop bot kita, lalu tambahkan codingan berikut di bagian paling bawah index.js:

1
2
3
4
5
6
const http = require('http');
const server = http.createServer((req, res) => {
res.writeHead(200);
res.end('ok');
});
server.listen(3000);

Setelah itu jalankan bot kita dan akan muncul tampilan web dengan url di sebelah kanan bertuliskan ok. Jika sesuai berarti kita berhasil mengubah bot kita ke bentuk web.

Selanjutnya pergi ke https://uptimerobot.com/ lalu lakukan login atau register.

Setelah itu masuk ke dashboard UpTimeRobot lalu click Add New Monitor.

Isi seperti berikut :

  • Monitor Type: HTTPS
  • Friendly Name: nama bot anda
  • URL (or IP): isi dengan url yang ada di sebelah kanan Replit tadi
  • Monitor interval: 5 minutes

Setelah itu click Create Monitor.

Selamat, bot anda akan berjalan 24 jam tanpa gangguan. Meski begitu, Replit akan melakukan refresh setiap harinya sehingga bot kita akan down untuk beberapa menit saja. Namun, menurut saya cara ini adalah yang terbaik untuk melakukan hosting bot discord secara gratis.

Getting Info...

About the Author

Mungkin ketidaksempurnaan kita yang membuat kita begitu sempurna satu sama lain.Cinta adalah ruang dan waktu yang diukur oleh hati.Cinta terdiri dari satu jiwa yang menghuni dua tubuh.Kamu mungkin memegang tanganku untuk sementara waktu, tetapi kamu…

Post a Comment

Cookie Consent
We serve cookies on this site to analyze traffic, remember your preferences, and optimize your experience.
Oops!
It seems there is something wrong with your internet connection. Please connect to the internet and start browsing again.
AdBlock Detected!
We have detected that you are using adblocking plugin in your browser.
The revenue we earn by the advertisements is used to manage this website, we request you to whitelist our website in your adblocking plugin.
Site is Blocked
Sorry! This site is not available in your country.