Telegram Bot with ESP8266

Divine control of ESP8266 with telegram bot.

  • 1,744 views
  • 0 comments
  • 13 respects

Components and supplies

Apps and online services

About this project

Hi fellow coders,

It's amazing to start my Hackster career with telegram bot API and ESP8266. Through this project I try to depict how to control ESP8266 with telegram bot which opens to the great world of IoT.

Check the whole project here

1 . Installing Telegram Bot Library

First of all download Telegram Bot library (download) and add it to Arduino IDE.

2. Configure Telegram Bot

Install Telegram on your Laptop or Phone and search for Botfather. Through Botfather create your new bot.

From Botfather you can taken the token.

3. Setting up the Device

Connect ESP8266 to Arduino as shown. Connect GPIO0 to ground and reset to reset of Arduino and upload the code.

4. The Code

#include <ESP8266WiFi.h> 
#include <WiFiClientSecure.h> 
#include <TelegramBot.h> 
#define LED 1 //led pin number
// Initialize Wifi connection to the router 
const char* ssid     = "xxxxx"; 
const char* password = "yyyyy"; 
// Initialize Telegram BOT 
const char BotToken[] = "xxxxxxxxx"; 
WiFiClientSecure net_ssl; 
TelegramBot bot (BotToken, net_ssl); 
// the number of the LED pin   
void setup()  
{   
Serial.begin(115200);   
while (!Serial) {}  //Start running when the serial is open  
delay(3000);   
// attempt to connect to Wifi network:   
Serial.print("Connecting Wifi: ");   
Serial.println(ssid);   
while (WiFi.begin(ssid, password) != WL_CONNECTED)  
      {   
  Serial.print(".");   
  delay(500);   
}   
Serial.println("");   
Serial.println("WiFi connected");   
bot.begin();   
pinMode(LED, OUTPUT);   
}   
void loop()  
{   
message m = bot.getUpdates(); // Read new messages   
if (m.text.equals("on"))  
      {   
  digitalWrite(LED, 1);    
  bot.sendMessage(m.chat_id, "The Led is now ON");   
}   
else if (m.text.equals("off"))  
      {   
  digitalWrite(LED, 0);    
  bot.sendMessage(m.chat_id, "The Led is now OFF");   
}   
}   

Put your wifi credentials and bot token and upload the code.

5. Test The Working

I here include the making and working of my project .

Check it here

Schematics

schema
Wifitoarduino jz26ak1qwk

Code

ESP8266_Telegram.inoC/C++
#include <ESP8266WiFi.h>
#include <WiFiClientSecure.h>
#include <TelegramBot.h>


#define LED 1
// Initialize Wifi connection to the router
const char* ssid     = "xxxx";
const char* password = "yyyy";


// Initialize Telegram BOT
const char BotToken[] = "xxxxxxxxxxx";

WiFiClientSecure net_ssl;
TelegramBot bot (BotToken, net_ssl);

 // the number of the LED pin  
void setup() 
{  
 Serial.begin(115200);  
 while (!Serial) {}  //Start running when the serial is open 
 delay(3000);  
 // attempt to connect to Wifi network:  
 Serial.print("Connecting Wifi: ");  
 Serial.println(ssid);  
 while (WiFi.begin(ssid, password) != WL_CONNECTED) 
       {  
   Serial.print(".");  
   delay(500);  
 }  
 Serial.println("");  
 Serial.println("WiFi connected");  
 bot.begin();  
 pinMode(LED, OUTPUT);  
}  
void loop() 
{  
 message m = bot.getUpdates(); // Read new messages  
 if (m.text.equals("on")) 
       {  
   digitalWrite(LED, 1);   
   bot.sendMessage(m.chat_id, "The Led is now ON");  
 }  
 else if (m.text.equals("off")) 
       {  
   digitalWrite(LED, 0);   
   bot.sendMessage(m.chat_id, "The Led is now OFF");  
 }  
}  

Comments

Similar projects you might like

The Magnetic Field and RGB Tester

Project tutorial by Kutluhan Aktar

  • 249 views
  • 0 comments
  • 5 respects

Development Board for AtTiny MCU

by Vincenzo G.

  • 100 views
  • 0 comments
  • 4 respects

Version 2.0 Advanced Attendance System (Without Ethernet)

Project tutorial by GadgetProgrammers

  • 2,902 views
  • 5 comments
  • 44 respects

How To Use DS18B20 Water Proof Temperature Sensor

Project showcase by IoTBoys

  • 145 views
  • 0 comments
  • 3 respects

Ultrasonic Security System

Project tutorial by Krepak

  • 354 views
  • 0 comments
  • 6 respects
Add projectSign up / Login