Framework atau kerangka kerja pada dasarnya dibuat untuk memudahkan atau mempersingkat suatu pekerjaan karena semuanya telah tersedia dan terstruktur jadi kita tidak perlu membuatnya dari nol. Tugas kita tinggal rajin-rajin saja membaca dokumentasi yang telah disediakan pada framework tersebut.
Dalam kaitannya dengan telegram bot, banyak sekali framework-framework yang tersedia dengan beragam bahasa pemrograman, tinggal pilih saja mana yang cocok untuk kita.
Sesuai judul postingan, kali ini kita akan membahas salah satu dari framework telegram bot yang dibuat dengan bahasa pemrograman NodeJS, yaitu Telegraf.
Perlu diketahui, saya bukan seorang penulis kode, bukan developer dan juga bukan orang yang berlatar belakang IT. Saya hanya seorang end user yang gemar ngoprek 😀.
Oke mungkin cukup ngalor ngidulnya sekarang langsung saja. Sebelum kita memasang telegraf pastikan NodeJS nya telah terpasang pada PC atau laptop yang kita gunakan, cara memasangnya bisa dilihat disini jika kita akan menggunakannya secara lokal. Jika mau pakai VPS (Virtual Private Server) atau layanan cloud online lainnya juga silahkan.
N E X T . .
Persiapan Project
Oiya, disini saya menggunakan sistem operasi Linux, tepatnya Ubuntu MATE 16.04, jika memakai sistem operasi lain silahkan disesuaikan sendiri 😅.
Buka terminal
CTRL+ALT+T
dan buat sebuah folder dimana proyek kita akan diletakkan, disini saya menamai folder tersebut telegraf_bot
.mkdir telegraf_bot
Masuk ke folder proyek.
cd telegraf_botSeperti biasa dalam sebuah proyek NodeJS pada tahap awal kita harus melakukan inisiasi (init) terlebih dahulu.
npm initKita akan disuguhkan dengan beberapa pertanyaan, silahkan disesuaikan dengan proyek yang akan kita buat. Setelahnya akan didapati berkas baru bernama
package.json
, kurang lebih isinya yaitu sebagai berikut.
{
"name": "telegraf_bot",
"version": "1.0.0",
"description": "bot telegam dengan framework telegraf",
"main": "index.js"
,
"scripts": {
"start": "node index.js"
},
"author": "Rizky",
"dependencies": {
"telegraf": "^3.17.0"
}
}
Perhatikan contoh diatas pada bagian
main
dan scripts
, nama berkasnya adalah index.js
. Jadi nanti kita harus membuat berkasnya dengan nama index.js
.Memasang Telegraf
npm i telegraf
Menulis Skrip
Seperti telah dijelaskan diatas, saatnya kita membuat berkas baru dengan nama
index.js
, lalu buka berkas tersebut dengan penyunting teks kesayangan Anda dan salinlah skrip berikut ini.
/*---------------------------------- Create Simple Telegram bot with Telegraf Framework ~ NodeJS -----------------------------------*/ const Telegraf = require('telegraf') const bot = new Telegraf('ISI TOKEN') bot.on('text', (ctx) => { console.log(ctx.message) if (ctx.message.text == '/start') { ctx.replyWithHTML( '<i>Welcome</i> <b>'+ ctx.from.first_name +'</b>', {'reply_to_message_id':ctx.message.message_id})} if (ctx.message.text == '/hey') { ctx.replyWithMarkdown( 'Hey *'+ ctx.from.first_name +'*', {'reply_to_message_id':ctx.message.message_id})} }) bot.startPolling()Berikut penjelasan dari skrip diatas.
- const mendefinisikan sebuah variable yang nilainya tetap, sama halnya dengan define pada bahasa pemrograman PHP.
- const Telegraf : konstanta Telegraf dari framework
telegraf
. - const bot : konstanta bot, yang akan kita isi dengan TOKEN yang didapat dari BotFather agar bisa diproses oleh framework telegraf. Cara mendapatkan TOKEN bisa dilihat pada postingan sebelumnya yaitu "Membuat Bot Telegram untuk Personal Notifikasi".
- ctx : context, dokumentasinya selengkapnya http://telegraf.js.org/context.html
- bot.on('text' : merupakan listener jika pesan yang masuk adalah text.
- console.log(ctx.message) : digunakan untuk debug incoming message ke terminal atau console.
- ctx.reply : ini sudah jelas yaitu mengirimkan atau membalas pesan yang masuk. Pada contoh diatas lihat ctx.replyWithHTML, berarti mengirimkan balasan kepada user dengan gaya HTML selengkapnya lihat #html-style. Sedangkan ctx.replyWithMarkdown, berarti mengirimkan balasan kepada user dengan gaya Markdown selengkapnya lihat #markdown-style.
- bot.startPolling() : menggunakan metode long polling, karena saya menjalankannya secara lokal, akan berbeda jika menggunakan webhook.
Oke saya rasa penjelasan diatas sudah cukup, sekarang mari kita lihat hasilnya pada gambar berikut ini.
Sedangkan di terminal atau console yaitu sebagai berikut.
Demikianlah gambaran mengenai cara membuat bot telegram degan framework Telegraf. Untuk skripnya silahkan dikustomisasi dan diexplore lebih lanjut. Jangan lupa untuk membaca dokumentasinya. Selamat berkreatifitas!
No comments:
Post a Comment
Silahkan gunakan nama asli dalam berkomentar. Profil unknown / anonim tidak akan di-approve! Terima kasih.