Skip to content

zaidan's blog

a newbie, writing IT-related stuff and some personal experiences

Menu
  • IT
  • Personal life/opinion
  • Linux
  • Sepeda
  • Proxmox
  • VM/Container
  • Kuliah/Catatan Kuliah
Menu

Membuat Bot Telegram (dan coba kirim dari Linux)

Posted on 05/01/2024 by Zaidan

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 Reply Cancel reply

Your email address will not be published. Required fields are marked *

Tulisan saya yang lain:

  • Menjadwalkan Backups pada Proxmox VE
  • Gowes Bogor – part 1
  • Pengalaman Mengambil Online Linux Course
  • Motoran ke Rawagede – Perjalanan Jonggol-Sukamakmur

Arsip blog

  • September 2025
  • August 2025
  • July 2025
  • June 2025
  • May 2025
  • April 2025
  • March 2025
  • February 2025
  • January 2025
  • December 2024
  • November 2024
  • October 2024
  • September 2024
  • August 2024
  • July 2024
  • June 2024
  • May 2024
  • April 2024
  • March 2024
  • February 2024
  • January 2024
  • December 2023
  • November 2023
  • October 2023
  • September 2023
  • August 2023
  • July 2023
  • June 2023
  • May 2023
© 2025 zaidan's blog | Powered by Superbs Personal Blog theme