Cara Mengirim Pesan Ke Bot Telegram dengan Macro VBA Excel

Pada kesempatan kali ini saya akan memberikan tutorial bagaimana mengirim pesan ke Telegram dari VBA Excel dengan bantuan Bot. Tapi sebelum masuk ke tutorial, ada beberapa bahan yang harus dipersiapkan terlebih dahulu.

Ok, Bahan wajib yang harus disiapkan tentunya harus sudah memiliki Bot telegram. Karena tanpa Bot Telegram kita tidak bisa mengirim pesan. Dan Bot telegram ini nanti akan digunakan pada tutorial kali ini. Jika sudah ada, bisa di skip langsung ke penulisan script dibawah.

Membuat Bot Telegram di Bot Father

Bagi yang belum memiliki Bot Telegram, untuk memiliki sebuah bot telegram caranya sangat mudah, kita hanya perlu melakukan pendaftaran Bot yang kita inginkan ke Bot father (@BotFather).

BotFather adalah induk dari semua Bot telegram, bot ini yang nantinya akan membuatkan dan mengatur Bot untuk kita. Untuk Cara membuat Bot Telegram caranya adalah :

  • Pada Aplikasi Chat Telegram Lakukan pencarian @botfather
  • Mulai mengirim Chat dengan Klik Start pada @botfather, untuk membuat Bot baru tuliskan perintah /newbot
  • Setelah itu kita akan diminta untuk memasukan Nama dari Bot kita. Misalnya disini saya Buat dengan Nama “Excelnoob Bot”. selanjutnya kita dimasukan Username Bot misalnya “excelnoob_bot”
  • sampai tahap ini Bot sudah berhasil dibuat. dan Catat Token Access API. Jangan sampai hilang dan jangan sampai diketahui orang lain.

Sampai tahap ini, Bot Telegram telah berhasil dibuat. Namun apabila kita melakukan Chat dengan Bot telegram @excelnoob_bot, Bot belum bisa memberikan respon apapun.

Hal ini wajar, karena kita belum membuat Bot engine untuk merespon Chat yang masuk ke Bot yang kita buat.

Banyak cara yang bisa dilakukan untuk membuat Bot Engine tapi tentunya harus menguasi bahasa pemrograman misalnya seperti PHP, Python , Javascript dll.

Atau juga bisa menggunakan Bot Engine yang sudah ada seperti Manybot, Godebug dll.

Namun untuk tutorial kali ini, hal itu kita kesampingkan dulu. Karena kita akan melakukan pengiriman pesan secara langsung satu arah dari Excel ke Telegram. Jadi tidak diperlukan sebuah Respon dari Bot.

Mengirim Pesan ke Telegram Bot Dari VBA

Setelah kita memiliki sebuah bot Telegram berserta dengan Access Tokennya. saatnya kita melakukan pengiriman pesan Melalui Excel VBA.

Disini kita akan mengunakan parameter SendMessage pada API telegram. Parameter yang dibutuhkan untuk SendMesage berdasarkan Dokumentasi API telegram adalah sebagai berikut.

Untuk parameter yang digunakan bisa dibaca selengkapnya di https://core.telegram.org/bots/api

Bisa kita lihat bahwa parameter yang dibutuhkan untuk mengirimkan pesan ke Telegram, minimalnya harus ada Chat_ID dan Text Pesan sedangkan yang lainnya adalah optional.

Untuk memulai membuat scriptnya, silahhkan masuk Visual Basic Editor. dan buatlah sebuah Module, kemudin tulis script dibawah ini kedalam Module

Rem Auth : Excelnoob.com
Const Token = "12345678910" 'isi dengan Token Bot yg dimiliki
Const sURL = "https://api.telegram.org/bot" & Token

Sub KirimPesan(Pesan As String, ChatID As String)
    Dim oHTTP As Object
    Dim Respon As String
    Dim PostURL As String
    
    PostURL = sURL & "/sendMessage?chat_id=" & ChatID & "&text=" & Pesan
    
    Set oHTTP = CreateObject("MSXML2.XMLHTTP")
    With oHTTP
        .Open "POST", PostURL, False
        .setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
        .Send
        Respon = .ResponseText
    End With
    Debug.Print Respon
End Sub

Setelah dibuat Procedur Kirim pesan seperti contoh diatas, untuk melakukan pengiriman pesan bisa dilakukan dengan membuat Procedur baru dan melakukan pemanggilan procedur KirimPesan.

Sub Kirim()
Dim Pesan as String, ID as string
Pesan = "Ini adalah Pesan yang dikirim dari Excel VBA"
ID = "123456" ' ID juga bisa menggunakan @namaid
KirimPesan Pesan, ID 
End Sub

atau untuk memudahkan bisa juga dibuat Sebuah Userform untuk melakukan pengiriman pesan seperti dibawah ini. yang diperlukan hanya 2 buah Textbox, 2 Buah Label dan 1 Command Button

Untuk Script yang ada pada tombol send hanya diisi seperti ini.

Private Sub CommandButton1_Click()
KirimPesan TextboxPesan.Text, TextboxID.Text
End Sub

Jika berhasil akan menampilkan Pesan Result Ok

Excelnoob juga telah melampirkan file contoh yang bisa di download dibawah ini.

Alternatif link download : Download

Demikian tutorial bagaimana cara mengirim pesan ke telegram Melalui Excel VBA. Dan tunggu tutorial berikutnya dari Excelnoob.

Be the first to comment

Leave a Reply

Your email address will not be published.


*