Kirim Pesan Dari NodeMCU ke Telegram – TelegramBot #1

Pengumuman: Karena Banyaknya laporan Pesan Tidak Terkirim, saya ganti library dengan CTBot, dan sudah di uji coba sukses terkirim.

Tutorial ini merupakan kelanjutan dari tutorial sebelumnya:

  1. Apa Itu NodeMCU ESP8266? Bagaimana Cara Pakenya?
  2. 2 Cara Sukses Menambahkan Board ESP8226 ke Arduino IDE!
  3. Program NodeMCU ESP8266 – Blink

Jadi biar gak bingung, agan harus nyoba terlebih dahulu Tutorial sebelumnya. (WAJIB, Bagi Yang Belum Nyoba).

***

Untuk mencoba mengirim pesan dari NodeMCU ke Applikasi telegram sangat mudah sekali, agan hanya perlu menyiapkan:

  1. NodeMCU – BELI KLIK DISINI
  2. Kabel USB – BELI KLIK DISINI

Ya hanya NodeMCU dan Kabel USB buat Upload program dari Arduino IDE ke NodeMCU. Jadi kali ini tidak ada rangkaian apa-apa ya, langsung ke pemrograman saja.

BUAT BOT di TELEGRAM dengan BotFather

Ssttt… Sebelum Program Arduino agan harus bikin dulu Bot di Telegram. Caranya:

1. Buka Applikasi Telegram, terus cari BotFather.

2. Lalu buka BotFather, Klik START. Lalu ketik /newbot , selanjutnya akan diminta memberikan nama bot dan username bot. Jika sudah makan akan muncul Token, seperti yang dilingkari merah dibawah ini. Simpan Token tersebut.

3. Kita juga harus mengetahui Id Telegram kita, caranya cari IDBot.

4. Klik /start , lalu ketik /getid. Nanti akan muncul id telegram kamu seperti yang dilingkari dibawah ini:

Oke sekarang agan sudah membuat Bot dan juga sudah mengetahui Token dan id telegram agan. Selanjutnya yang tidak kalah penting agan perlu masuk ke Bot yang sudah agan buat dan klik /start.

***

Sekarang waktunya buka Arduino IDE untuk Ngoding…

ADD LIBRARY CTBot dan ArduinoJson ke Arduino IDE

Nah sebelum koding, harus Add dulu 2 Library dibawah ini. WAJIB!

1. CTBot (DROPBOX)

2. ArduinoJson V.5 (DROPBOX)

Bagi yang belum tau cara Add Library ke Arduino IDE, silahkan buka Link berikut:

Bagaimana Cara Memasukan Library Ke Aplikasi Arduino IDE?

***

CONTOH PROGRAM KIRIM PESAN KE TELEGRAM

Jika sudah sukses Add library ke Arduino IDE, sekarang kita lanjut kepemrograman. Silahkan agan ketik ulang atau salin program dibawah ini

#include "CTBot.h"
CTBot myBot;
String ssid = "XXXX";
String pass = "XXXX";
String token = "XXXX";
const int id = 1234;

void setup() {
  Serial.begin(9600);
  Serial.println("Starting TelegramBot...");
  myBot.wifiConnect(ssid, pass);
  myBot.setTelegramToken(token);

  if (myBot.testConnection()) {
    Serial.println("Koneksi Bagus");
  } else {
    Serial.println("Koneksi Jelek");
  }

  myBot.sendMessage(id, "Tes Kelas Robot");
  Serial.println("Pesan Terkirim");
}

void loop() {

}

Catatan:

String ssid = “XXXX”; –> pada koding bagian XXXX diganti dengan nama ssid atau username hotspot / wifi agan.
String pass = “XXXX”; –> yang bagian XXXX nya ganti dengan password hotspot / wifi agan.
String token = “XXXX”; –> yang bagian XXXX ini ganti dengan Token yang tadi udah kita buat Bot nya.
const int id = 1234; –> yang bagian 1234 ganti dengan id agan yang tadi udah diketahui.

myBot.sendMessage(id, “Tes Kelas Robot”); –> ini isi pesan yang dikirim “Tes Kelas Robot“, bisa agan ganti dengan yang agan inginkan.

Terkahir tinggal agan Upload, sampai Done Uploading.

Tunggu beberapa detik dan munculah pesan di Telegram dari Bot yang tadi udah agan buat.

Oke. Selamat mencoba ya agan-agan semua. Jika berhasil silahkan share dikomentar ya, biar teman-teman lainnya juga pada bersemangat, jika ada yang bingung juga share juga ya.

Tutorial selanjutnya:

NodeMCU Terima Pesan – TelegramBot #2

5 Comments

    Rizal

    Kok gagal ya gan ?
    Arduino: 1.8.13 (Windows 10), Board: “NodeMCU 1.0 (ESP-12E Module), 80 MHz, 4M (1M SPIFFS), v2 Lower Memory, Disabled, None, Only Sketch, 115200”

    C:\Users\User\Documents\Arduino\libraries\CTBot\src\CTBotSecureConnection.cpp: In member function ‘String CTBotSecureConnection::send(const String&) const’:

    C:\Users\User\Documents\Arduino\libraries\CTBot\src\CTBotSecureConnection.cpp:50:2: error: ‘BearSSL’ has not been declared

    BearSSL::WiFiClientSecure telegramServer;

    ^

    C:\Users\User\Documents\Arduino\libraries\CTBot\src\CTBotSecureConnection.cpp:50:28: error: expected ‘;’ before ‘telegramServer’

    BearSSL::WiFiClientSecure telegramServer;

    ^

    C:\Users\User\Documents\Arduino\libraries\CTBot\src\CTBotSecureConnection.cpp:51:2: error: ‘telegramServer’ was not declared in this scope

    telegramServer.setFingerprint(m_fingerprint);

    ^

    exit status 1

    Error compiling for board NodeMCU 1.0 (ESP-12E Module).

    This report would have more information with
    “Show verbose output during compilation”
    option enabled in File -> Preferences.

    Reply
      Ajang Rahmat

      Untuk ERROR tersebut silakan Update Dulu …
      Caranya:
      1. di Arduino IDE klik Menu TOOLS
      2. kemudian ke Board, Board Manager
      3. Cari ESP8266 terus UPDATE

      Reply
    Muhamad Nur Arifin

    apakah tidak perlu menggunakan library wifi.h

    Reply
      Ajang Rahmat

      Tidak perlu.

      Dengan memilih pilihan Board NodeMCU 1.0, otomatis library wifi yang di perlukan udah ke Add.

      Reply
    andi

    saya sudah program sesuai dengan code diatas, tapi kok botnya di ada respon ya?

    Reply



Leave a Reply

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