Project tutorial

Telegram Bot with ESP8266 © GPL3+

Divine control of ESP8266 with telegram bot.

  • 16,436 views
  • 36 comments
  • 37 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

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");  
 }  
}  

Schematics

schema
Wifitoarduino jz26ak1qwk

Comments

Similar projects you might like

Arduino Atari Adaptor

Project tutorial by Dante Roumega

  • 7,222 views
  • 6 comments
  • 22 respects

Arduino Pendulum Physics Lab

Project tutorial by Paul Kassebaum

  • 311 views
  • 0 comments
  • 2 respects

Generating Audio with an Arduino and a Resistor Ladder DAC

Project showcase by 3 developers

  • 2,631 views
  • 5 comments
  • 7 respects

Humidity Measuring Molecule

Project showcase by KatjaNiggl

  • 1,352 views
  • 4 comments
  • 14 respects

Automated Plant Watering System

Project in progress by Ammar Shahid

  • 36 views
  • 0 comments
  • 0 respects

Electroplating with Copper

Project tutorial by Ryan Gill

  • 6,768 views
  • 8 comments
  • 15 respects
Add projectSign up / Login