Aplikasi ESP8266 dengan Telegram (CTBot)

Aplikasi ESP8266 dengan Telegram (CTBot)

Telegram merupakan aplikasi chatting yang makin populer sebagai pesaing dari whatsapp. Adapun hal lain yang dikedepankan sebagai slogan adalah perpesanan terenkripsi yang dikenal sangat aman dan canggih. Fitur keamanan yang mumpuni serta didukung dengan berbagai tools dan fitur canggih membuat Telegram menjadi semakin digemari. Selain itu telegram sudah memiliki fitur bot yang dimana untuk saat ini whatsapp belum memilikinya (secara bebas). “Telegram Bot”  menjadikan Telegram berbeda dengan aplikasi chatting lainnya.

Pada kesempatan ini saya akan sharing mengenai pemrograman arduino terkait penggunaan telegram sebagai platform untuk monitoring dan kontrol jarak jauh. Adapun library yang akan digunakan adalah CTBot. menurut ane, ini merupakan library telegram yang sangat stabil dan sudah support arduinojson terbaru (untuk saat ini). Seperti pada tutorial terdahulu, kita perlu membuat telegram bot.

Membuat Telegram Bot

  • Buka telegram (disini saya menggunakan telegram desktop). Selanjutnya cari BotFather , kemudian pilih akun yang verified (centang biru). Terus klik START

ESP8266 Telegram (CTBot)

ESP8266 Telegram (CTBot)


  • Okey, selanjutnya akan tampil menu atau command yang digunakan dalam mengoperasikan bot. Karena kita akan membuat Bot maka kita pilih yang /newbot (bisa diketik terus kirim atau bisa juga diklik pada daftar menu di pesan yang diterima)
NodeMCU telegram

  • Selanjutnya adalah memberikan nama pada bot yang kita buat. sebagai contoh saya memberi nama bot yang dibuat dengan "arducoding".
NodeMCU telegram

  • Setelah memberikan nama bot,  selanjutnya kita diminta untuk mengisi username bot yang sebelumnya dibuat. Nah penamaan username ini harus mengandung kata "bot" dibelakangnya. Sebagai contoh disini saya mengisinya dengan username "arducoding_bot"
Wemos D1 Mini telegram
  • Kalau username dapat diterima makan pembuatan bot akan dibilang berhasil dan akan muncul kode token seperti dibawah. Nah, token ini nantinya akan kita gunakan di program arduino.

  • Buka Bot yang telah berhasil dibuat dengan klik pada link/username. Setelah itu pilih start dan Bot akan terbuka
Wemos D1 Mini telegram


Wemos D1 Mini telegram
  • Okey, bot sudah selesai dibuat dan siap untuk digunakan.

Program ESP8266 (Via Arduino IDE)
Sebelum melakukan pembuatan programnya, pastikan telah menginstall library yang akan digunakan yaitu CTBot v2.1.9. Kita dapat menginstallnya via library manager (Sketch - Include Library - Library Manager). Harap perhatikan versi library yang digunakan!
Wemos D1 Mini telegram

Wemos D1 Mini telegram

Setelah library yang diperlukan terinstall maka kita lanjut ke contoh program arduino. kita bisa gunakan sampel program dari library. Untuk token, isikan token bot telegram yang telah didapatkan pada langkah pembuatan bot di awal tadi.
#include "CTBot.h"
CTBot myBot;

String ssid  = "mySSID"    ; // Isi sesuai dengan nama hotspot kamu
String pass  = "myPassword"; // Isi sesuai dengan password hotspot
String token = "myToken"   ; // Isi dengan telegram bot Token

void setup() {
	// initialize the Serial
	Serial.begin(115200);
	Serial.println("Starting TelegramBot...");

	// connect the ESP8266 to the desired access point
	myBot.wifiConnect(ssid, pass);

	// set the telegram bot token
	myBot.setTelegramToken(token);
	
	// check if all things are ok
	if (myBot.testConnection())
		Serial.println("\ntestConnection OK");
	else
		Serial.println("\ntestConnection NOK");
}

void loop() {
	// a variable to store telegram message data
	TBMessage msg;

	// if there is an incoming message...
	if (CTBotMessageText == myBot.getNewMessage(msg)){
          Serial.print("Pesan Masuk: ");
          Serial.println(msg.text);
    
	  // ...forward it to the sender
	  myBot.sendMessage(msg.sender.id, msg.text);
          Serial.print("Pesan Keluar: ");
          Serial.println(msg.text); //isinya masih sama
	}
	// wait 500 milliseconds
	delay(500);
}
Selanjutnya kita upload program ke esp866. Harap disesuaikan board (menu Tools - Board - pilih board yang akan digunakan) dan COM yang akan digunakan. Sebagai contoh disini saya menggunakan Wemos D1 Mini. Program diatas merupakan program echo. Maksudnya adalah pesan yang diterima oleh bot akan dikirim kembali kepada pengirim. Hasilnya seperti berikut (telegram desktop dan serial monitor):
Arduino Telegram

Begitulah untuk langkah-langkah penggunaan Bot Telegram pada modul esp8266. Ini merupakan tutorial awal yang harus kita pahami terlebih dahulu sebelum mengembangkan sistem kontrol atau monitoring via Telegram.