2 Cara Membuat Bot Telegram (Coding dan Tanpa Coding)

membuat bot telegram
Pada artikel sebelumnya, saya telah menyinggung sedikit mengenai cara membuat bot Telegram tanpa menguasai bahasa pemrograman (coding).

Disini mari kita bahas secara lengkap 2 cara membuat bot Telegram.
Tutorial ini diperuntukkan bagi pemula atau bagi yang belum familiar dengan bot telegram.

Apa sih fungsinya bot Telegram? “Banyak”. Salah satu contohnya yang paling umum adalah sebagai server pulsa.

Pernah kan membeli pulsa di konter biasa selain melalui ATM, M-banking dan sejenisnya? Saya sendiri pernah tak sengaja memperhatikan saat membeli pulsa di konter biasa, penjualnya pakai Telegram. Dalam hati saya berkata “kekinian juga”.

Format yang digunakan yakni:
<kode>.<nomor tujuan>.<pin>
Karena saya menggunakan Simpati dan pada saat itu mengisi pulsa 5rb, maka:
s5.081234567890.1234

Dalam sesaat, pulsapun masuk. Eh, kenapa jadi bahas soal pulsa ya..

Contoh tersebut hanya sedikit gambaran saja, fungsi bot Telegram ini lebih dari sekedar itu. Buktinya raksasa provider dan Bank BUMN terbesar di Indonesia juga menggunakan bot Telegram sebagai salah satu asisten virtualnya. Keren kan.

Baiklah, seperti judul artikel ini: coding dan tanpa coding berarti kita memerlukan PC / laptop sebagai alat bantu (untuk coding). Saya sarankan anda menggunakan sistem operasi Linux agar lebih mudah.

Saya bukan pengguna Linux, apakah bisa mengikuti tutorial ini? “Bisa” akan tetapi kurang maksimal (hanya opini, boleh diperdebatkan).

Daftar isi:
Mendaftarkan bot ke BotFather
Merubah deskripsi, tentang dan bot picture
Bot Telegram tanpa coding
Coding dengan Framework

Dasar Bot Telegram

Mendaftarkan bot ke @Botfather

Pilih menu pencarian dan ketikan “Botfather” atau “@Botfather”.

membuat bot telegram - BotFather

Lalu klik START untuk memulai interaksi dengan @Botfather. Kita akan disuguhkan menu pilihan.membuat bot telegram - BotFather startKarena tujuan kita membuat bot maka kirim: /newbot. Jawab pertanyaan-pertanyaan dari Botfather.

  • Nama bot, sebagai contoh saya mengisinya: Pandeglang City
  • Username bot, wajib menggunakan akhiran kata “bot”. Saya isi: badakcula1Bot

membuat bot telegram - newbot

Jika username tersedia, saat itu juga kita akan mendapatkan TOKEN yang merupakan identifier dari bot itu sendiri.

membuat bot Telegram - TOKEN

Catat baik-baik TOKEN yang didapat dari BotFather. Pada contoh ini TOKEN adalah: 544281852:AAHwMNdly2g51D4C0ructywSeBzhRUzE3HM.

NOTE : TOKEN ini bersifat rahasia, hanya kita sendiri selaku pemilik (creator) bot yang boleh mengetahuinya, jika diperlukan kita dapat melakukan revoke TOKEN, untuk memperbaruinya.

Merubah deskripsi, tentang dan bot picture

Meski terlihat sepele, namun alangkah baiknya jika bot yang kita buat memiliki identitas yang jelas. Maksudnya, bot ini kegunaannya apa, untuk apa dan sebagainya.

Deskripsi bot: kirim /setdescription > pilih bot > isi deskripsi.

membuat bot telegram - set bot description

Tentang bot, kirim: /setabouttext > pilih bot > isi about text yang menggambarkan bot tersebut, atau apapun terserah anda.

membuat bot telegram - set bot about

Profile picture bot, kirim: /setuserpic > pilih bot > pilih gambar (upload).

membuat bot telegram - set bot picture

Baiklah, sekarang bot sudah mempunyai akses TOKEN dan identitas, kita lanjut ke tahap berikutnya..

1) Membuat bot Telegram tanpa coding

Agar lebih terstruktur, kita mulai dari membuat bot telegram tanpa coding, yakni menggunakan bantuan bot pihak ketiga: @Manybot.

membuat bot telegram tanpa coding

Seperti biasa, untuk memulai interaksi dengan bot API klik START. Tambahkan bot baru dengan cara mengirimkan pesan: /addbot atau klik pada tombol Create a New Bot.

membuat bot telegram - @manybot

Langkah-langkahnya adalah sebagai berikut:

  1. kirim /addbot atau klik “Create a New Bot
  2. klik “I’ve copied the API token“, karena kita sudah mendapatkan TOKEN pada langkah di atas
  3. Copy TOKEN yang tadi kita dapat dari BotFather, paste dan kirimkan pada Manybot
  4. Selanjutnya, pilih /skip

membuat bot telegram - setup manybot

Sampai pada tahap ini, bot sudah siap digunakan (sudah terpasang Manybot).

membuat bot telegram - already Manybot

Selanjutnya adalah memulai interaksi dengan bot yang tadi kita buat dengan cara klik link https://telegram.me/badakcula1Bot atau pada menu pencarian ketikan “@badakcula1Bot”. Lalu klik START (sesuaikan nama botnya).

Beberapa fitur yang tersedia pada Manybot diantaranya:

  1. Broadcast ke user (subscribers) atau channel
  2. Autoposting
  3. RSS feed
  4. Custom commands
  5. Form replies
  6. yang lainnya silahkan lihat sendiri …

Pada artikel kali ini, saya hanya akan membahas fitur “Custom Commands”. Tujuannya yaitu untuk membuat bot interaktif.

membuat bot telegram - menu Manybot

Klik pada tombol “Custom Commands“. Setelah mendapat balasan pilih “Create Command“.

membuat bot telegram Manybot custom-commands

Masukan command baru sesuai dengan format diatas. Sebagai contoh, saya membuat command: /hello.

Setelah mendapat balasan, isikan kembali pesan teks yang akan digunakan untuk membalas command: /hello. Disini saya isi: “Hello Guys!”.
Kemudian pilih Save.

membuat bot telegram - hello custom commands

membuat bot telegram - save manybot

Sekarang pilih menu “Back” sampai kembali pada menu utama.

Mari kita coba untuk memeriksa apakah custom command berjalan dengan baik. Kirim: /hello.

membuat bot telegram custom command manybot

Jika bot membalas “Hello Guys!” sesuai dengan apa yang telah kita setting sebelumnya, maka custom commands berhasil.

Cukup mudah kan? tanpa perlu menguasai bahasa pemrograman sekalipun kita bisa membuat bot telegram. Hanya saja fiturnya terbatas, dan availability nya tergantung dari server Manybot itu sendiri.

Oiya jika ingin menambahkan command, caranya sama seperti diatas.

Dalam artikel ini saya hanya membuat satu custom command yaitu: /hello.

Selain itu, kita juga bisa mengatur pesan balasan agar tidak hanya berupa teks, bisa gambar, sticker, dokumen, file dan sebagainya. Silahkan disesuaikan dengan kebutuhan.

2) Coding dengan Framework

Sebelum masuk ke tahap coding, ada baiknya anda memahami dulu metode-metode pada bot API. Jika sudah membaca artikel tersebut, bagaimana, apakah masih mau melanjutkan membuat bot Telegram sendiri? 😀

Itu semua tergantung anda, kalo memang jago programming dan punya banyak waktu silahkan..

Saya sendiri lebih menyarankan untuk menggunakan framework (kerangka kerja), karena lebih cepat dan menghemat waktu pengembangan tanpa dipusingkan mengenai masalah UPDATE, OFFSET dan lain sebagainya.

Dengan framework kita bisa fokus pada tujuan, maksudnya mau difungsikan untuk apa botnya.

Salah satu framework yang cukup populer yaitu Telegraf, “Modern Telegram bot framework for Node js”.

Sebelum memasang telegraf, kita pasang terlebih dahulu Node.js dengan mengacu pada alamat berikut ini.

Oiya, disini saya menggunakan sistem operasi Linux, tepatnya Ubuntu MATE 16.04, jika memakai sistem operasi lain silahkan disesuaikan.
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_bot

Seperti biasa dalam sebuah proyek NodeJS pada tahap awal kita harus melakukan inisiasi (init) terlebih dahulu.

npm init

Kita akan disuguhkan dengan beberapa pertanyaan, silahkan disesuaikan dengan proyek yang akan kita buat. Setelahnya akan didapati file baru bernama package.json, kurang lebih isinya 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 filenya adalah index.js. Jadi nanti kita harus membuat file dengan nama yang sama yakni index.js.

Memasang Telegraf

npm i telegraf

Setelah terpasang, saatnya kita membuat file baru dengan nama index.js, lalu buka file tersebut dengan teks editor kesayangan anda.

Salin skrip berikut ini.

/*-------------------------------
Membuat bot Telegram sederhana 
dengan 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. Silahkan copy kembali TOKEN yang tadi kita gunakan di atas.
  • 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 metode webhook.

Saya rasa penjelasan diatas sudah cukup, sekarang mari kita lihat hasilnya pada gambar berikut ini.

membuat bot telegraf-js
Catatan: Jika TOKEN tidak dapat digunakan karena bentrok dengan Manybot, silahkan lakukan salah satu opsi berikut ini:

  1. Pilih /deletebot pada Manybot
  2. Revoke TOKEN melalui BotFather

Kesimpulannya: cara coding tentunya lebih baik, dikarenakan tidak tergantung pada bot pihak ketiga. Kita dapat leluasa mengekspresikan kode program sesuai keinginan dengan tetap memperhatikan aturan framework.

Untuk contoh bot Telegram dengan bahasa pemrograman lainnya dapat dilihat disini.

[Baca juga: Keunggulan Telegram dibanding Aplikasi Perpesanan lain]

14 thoughts to “2 Cara Membuat Bot Telegram (Coding dan Tanpa Coding)”

  1. saya sudah bisa bikin bot pendaftaran agen pulsa.
    namun, bot buatan saya tidak bisa dikirimi pesan(format pendaftaran)
    sudah saya coba utak atik, tetep belum bisa.
    saya lihat di bot pendaftaran punya teman bisa di kirimi pesan.
    malah saya bisa dpt info apa bila ada yg daftar melalui bot teman saya tsb.

    mohon bantuan.
    masih newbie

    trima kasih

    1. Perintahnya dipanggil/ dikirimi melalui private chat atau group Pak?
      Kalo di group silahkan lakukan setting privacy mode nya. Tujuannya adalah agar bot bisa menerima pesan selain diawali tanda “/”. Tp ini khusus di group ya.

      Untuk form pendaftaran / format pendaftaran, apakah sudah disesuaikan di dalam codingannya perintahnya?

    1. Kalo itu hubungannya dengan aplikasi / backendnya gan, kalo bot hanya sebagai perantara untuk menghubungkan pengguna dengan server, nah kalo aplikasi (backend) nya ya gmn kita mau ngaturnya, misalnya web base, only database dll.

Ada pertanyaan atau komentar?

Silahkan berkomentar dengan bijak.