Membuat Bot Telegram (dan coba kirim dari Linux)

Hai semuanya, apa kabar? Kali ini saya mau sharing mengenai bot Telegram. Di pekerjaan saya saat ini sehari-hari berinteraksi dengan bot yang ada di Telegram. Ada banyak kegunaan dari bot ini, ada yang bisa untuk membuat voting, menjalankan perintah tertentu dan banyak lagi. Saya sendiri dulu pas buat tugas akhir kuliah D3 pakai juga (buat bot sendiri) untuk notifikasi sistem (tugas akhir saya: https://ereport.ipb.ac.id/id/eprint/6960/ ).

Saya pikir, kayanya menarik nih buat ditulis di blog. Yuk kita mulai.

Pertama, kita cari akun untuk pembuatan botnya di Telegram. Nama akunnya BotFather (@BotFather). Kirim pesan /start di akun tersebut untuk memulai (gambar 1). Akan ada informasi singkat mengenai prompts untuk berinteraksi dengan bot tersebut. Saya namakan bot ini “Notifikasi Sistem”.image host

gambar 1

Untuk membuat bot baru, gunakan perintah /newbot . Selanjutnya, kita diminta untuk memberikan nama untuk bot tersebut dan juga username. Username harus menggunakan kata “bot” didalamnya (gambar 2).

image host

gambar 2

Setelah itu, BotFather akan memberikan informasi terkait bot yang kita buat. Yaitu token untuk bot kita. Kita perlu menyimpan token ini dengan aman karena token ini bisa digunakan oleh siapapun untuk mengendalikan bot yang kita buat (gambar 3).

image host

gambar 3

Selanjutnya, kita perlu mengetahui ID dari akun Telegram kita. ID berbeda dengan username. Untuk dapat mengetahui ID dari akun kita, kita bisa menggunakan bot Get My ID (@getmyid_bot). Kirim pesan /start dan bot tersebut (Get My ID) akan memberikan informasi terkait ID kita (gambar 4).

image host

gambar 4

Selanjutnya kita uji fungsionalitas dari bot yang berhasil kita buat tadi. Buka web browser dan kunjungi link:

https://api.telegram.org/bot<isi dengan token>/sendmessage?chat_id=<isi dengan chat ID>&text=<isi pesan>

Seperti pada gambar 5 saya coba kirim pesan dengan isi “testing” dan berhasil diterima pada akun Telegram saya.

image host

gambar 5

Selanjutnya, kita coba tes kirim pesannya dari Terminal Linux, bukan dari web browser lagi. Berikut sintaksnya:
curl -s -X POST -d "chat_id=<chat ID>&text=<isi pesan>" https://api.telegram.org/bot<token>/sendmessage

Berikut ini penjelasan singkat dari perintah tersebut:

curl: perintah utama, untuk transfer data dari atau ke server

-s : silent, artinya membuat perintah curl tidak menampilkan progress atau pesan eror

-X POST : untuk menentukan protokol yang digunakan, dalam hal ini, POST.

-d : untuk mengirimkan data ke API Telegram. Dalam hal ini, yang dikirimkan adalah "chat_id=<chat ID>&text=<isi pesan>"

https://api.telegram.org/bot<token> : URL tujuan. URL ini adalah API Telegram untuk mengirim pesan melalui bot.

Kita coba kirim dari Terminal Linux. Isi pesannya “Hello world. Testing 123. Sent from Linux”. Gambar 6 menampilkan pesan tersebut berhasil diterima.

image host

gambar 6

Berhasil.

Pada tulisan kali ini, kita sudah sama-sama belajar gimana cara buat bot Telegram, dan juga perintah agar bisa kirim pesan dari Terminal Linux. Kedepannya, saya mau buat bot ini lebih advanced, seperti kirim log harian yang terjadwal setiap waktu tertentu. Sepertinya menarik. Sampai jumpa di tulisan selanjutnya. Bye~

Leave a Comment