Membuat Chatbot Discord dengan PaLM API
Latar Belakang
Discord merupakan aplikasi chatting yang cukup ramai digunakan akhir-akhir ini. Discord cukup nyaman digunakan untuk keperluan hobi, komunitas, dan juga dapat dipakai oleh perusahaan untuk sarana komunikasi karyawan. Fitur-fitur yang disediakan oleh Discord cukup lengkap dan sangat mudah untuk digunakan. Salah satu fiturnya adalah fitur integrasi bot, kita dapat mengembangkan bot kita sendiri atau menggunakan bot lain yang tersedia untuk keperluan server kita. Dengan mengintegrasikan bot Discord dengan PaLM API kita dapat membuat chatbot pintar yang dapat membantu menjawab pertanyaan yang kita ajukan melalui Discord.
Tahapan
Kali ini kita akan mengembangkan bot Discord menggunakan JavaScript. Di sini saya menggunakan Node.JS, Discord.JS, dan PaLM API.
1. Membuat Bot Discord
Kita akan memulai dari membuat dan mendapatkan token dari Discord. Untuk membuat dan mendapatkannya, kita harus masuk ke laman https://discord.com/developers/applications dan memilih New Application
.
Silahkan isi nama sesuai dengan kebutuhan masing-masing. Pada kali ini saya akan menggunakan nama PaLM Bot dan jangan lupa untuk menekan tombol Create
.
Setelah itu kita masuk ke halaman Bot
dan akan menemukan tombol Reset Token
Untuk mendapatkan token, kita dapat menekan tombol Reset Token
dan jika sudah maka akan muncul tokennya. Pastikan untuk copy dan menyimpan tokennya! :D
Di halaman yang sama, kamu harus scroll sedikit ke bawah hingga menemukan Privileged Gateway Intents
,pastikan untuk menyalakan semua Intent
seperti gambar di bawah.
Setelah itu, kita akan masuk ke halaman OAuth2 dan memilih bagian Url Generator
. Untuk scopes pilih Bot
dan untuk Permissions
dapat disamakan dengan gambar di bawah ini
Jika sudah, akan terlihat link dan klik copy
, link ini berfungsi untuk menambahkan Bot ke dalam server kita. Silahkan pilih server yang diinginkan.
Jika berhasil maka akan terlihat teks di atas di server yang dipilih.
2. Mendapatkan API Makersuite
Untuk dapat menggunakan PaLM API diperlukan untuk masuk dan mendaftar di https://makersuite.google.com
Jika sudah, dapat klik Get API key
di pojok kiri. Lalu pilih Create API key
kamu dapat memilih untuk membuatnya di projek baru atau di projek yang sudah ada. Jika sudah maka akan mendapatkan API key
pastikan untuk copy atau menyimpannya.
Dokumentasi mengenai PaLM API dapat dibaca lebih lanjut di https://developers.generativeai.google/tutorials/chat_node_quickstart
3. Membuat projek NodeJS
Kita akan mulai dengan membuat projek NodeJS. Saya akan membuat direktori baru bernama palm-bot dan menginisiasi NPM di dalamnya.
mkdir palm-bot
cd palm-bot
npm init
Jika sudah berhasil, maka selanjutnya kita akan menginstall library yang dibutuhkan yaitu ada dotenv, google-auth-library, dan @google-ai/generativelanguage
npm install dotenv google-auth-library @google-ai/generativelanguage
Setelah itu saya akan membuat file .env yang berisikan Discord API Key & PaLM API Key seperti pada contoh di bawah.
Selanjutnya saya akan membuat file index.js
Lalu saya akan menjalankannya dengan perintah node index.js
Jika sudah terhubung dengan Discord, maka akan mengeluarkan output Bot is ready!
dan akan muncul juga tanda online di server Discord.
Lalu kita dapat mengirimkan pesan dan tag akun bot yang telah kita buat, jika kita mengirimkan pesan dan tidak tag akun bot maka pesan tidak akan diproses.
Karena keterbatasan karakter dari Discord, jika pesan memiliki panjang lebih dari 2000 karakter maka pesan tersebut akan dipecah dan dikirimkan menjadi pesan yang berbeda.
Kode program juga tersedia pada repository GitHub https://github.com/razanfawwaz/palm-bot
Selesai!
Bot dapat dikembangkan lebih jauh sesuai keinginan masing-masing. Untuk eksplorasi dengan Discord direkomendasikan untuk membaca panduan dari https://discordjs.guide/
Selamat berkreasi!