Problemas ESP8266 con Telegram

Hola, el 5 de febrero me dejo de reportar un equipo que puse en casa, este equipo contiene un ESP8266 que lo que recibe por serial lo transmite al Telegram… Estuvo funcionando por meses y de repente dejo de poder enviar mensajes.
Reduje el código para buscar el problema y basicamente client.connect(server, 443) da false y no deja enviar, y aunque fuerze esta condicion a true y envie el mensaje, no le llega a Telegram, pero esto estaba funcionando antes del 5 de febrero, no se si Telegram tuvo alguna actualizacion o los bots tienen caducidad…

En la terminal pone el mensaje a enviar y luego Enviado/No Enviado…
El mensaje a enviar es por ejemplo: GET/bot749518776:AAHT0CGCCUAQo0KAZ8o_LuunZ89RnNsiLSM/sendMessage?chat_id=629734790&text=Probando%20telegram

Si yo cambio el GET por https://api.telegram.org y eso lo pego en la dirección del navegador, allí si me lo envia a el telegram…

#include <WiFiClientSecure.h>
#include <ESP8266WiFi.h>

const char *ssid = "Alicia";
const char *pass = "Alicia77";


String BOTtoken = "bot749518776:AAHT0CGCCUAQo0KAZ8o_LuunZ89RnNsiLSM";//cambiar por el suyo
String Chat_id = "629734790"; // cambiar por el suyo
String TXT = "Probando Telegram";

WiFiClientSecure client;// inicio del cliente seguro
IPAddress server(149, 154, 167, 200);// IP de api.telegram.org

void setup() {
 Serial.begin(9600);
 WiFi.begin(ssid, pass);

 while (WiFi.status() != WL_CONNECTED) {
   delay(500);
   Serial.print(".");
 }
 
 Serial.println("");
 Serial.println("Conectado a la red WiFi");
 Serial.println("Dirección IP: ");
 Serial.println(WiFi.localIP());


// hasta aqui solo conecto el WIFI, ahora si pruebo mandar el mensaje a Telegram
     
 Serial.println("GET /" + BOTtoken + "/sendMessage?chat_id=" + Chat_id + "&text=" + TXT + "");

 if (client.connect(server, 443)) { 
   client.println("GET /" + BOTtoken + "/sendMessage?chat_id=" + Chat_id + "&text=" + TXT + "");
   Serial.println("Enviado");
 }else{
   Serial.println("NO Enviado");
 }
}


void loop() {
}

¿Alguna sugerencia?..
Gracias

Lee las Normas del foro
Ahora edita tu post usando etiquetas para código </>

Para reproducir un problema se debe contar con la misma librería que usas de modo que coloca el enlace (usando etiquetas también) que nos permita reproducir tu error.

Te pregunto, por las dudas vos actualizaste las librerias de ESP8266 y Json, si es asi seguro que deja de funcionar a mi me paso lo mismo gracias a surbyte y otros colegas encontre el error

Si, actualice las librerias cargue el ESP8266 de vuelta y sigue sin andar, luego actualice el hardware y tampoco anduvo....

no eso es lo que no tenes que hacer yo uso la limreria Json la version 5.13.5 y las de la tarjeta esp8266 2.4.2, yo aprendi que cuando el ide de arduino me ofrece actualizar me fijo que cambios realiza, porque gracias a los colegas del foro me di cuenta que porquerer lo ultimo a veces arruina algo

En este caso el ESP8266 estuvo funcionando por meses y de repente dejo de funcionar... no es el caso de que por acutualizar una libreria dejase de funcionar... Gracias

Hola a todos!!! he tenido el mismo problema... desde hace una semana mi telegram bot no funciona... estoy usando la librería UniversalTelegramBot.

He googleado pero no encontré más información. :confused:

Saludos.

Yo actualmente uso CTBot.h en este montaje y funciona perfectamente. ¡¡Ojo con la versión de JSon!!

www.jopapa.me

Algo cambiaron relativo a ssl/tls en el servidor de telegram...

Este código funciona.
Antes de conectar llama a client.setInsecure();
Tambien estaba mal la sintaxis de la url, le faltaba "/bot". Pero el error es que no conecta sin el setInsecure()

Ademas es mejor, en la funcion connect, poner el nombre en vez de la ip. Si cambia la ip en el futuro volverá a fallar.

Lo he probado con el ultimo firmware del esp 2.5.0.

Saludos.

Serial.println("GET /bot" + BOTtoken + "/sendMessage?chat_id=" + Chat_id + "&text=" + TXT + "");
 client.setInsecure();
 if (client.connect("api.telegram.org", 443)) {
   client.println("GET /bot" + BOTtoken + "/sendMessage?chat_id=" + Chat_id + "&text=" + TXT + "");
   Serial.println("Enviado");
   delay(1500);
 }else{
   Serial.println("NO Enviado");
 }

Gracias a todos... se me complico por unos detalles pero logre hacelo funcionar con el codigo de harkonnen, y como dijeron, algo en telegram ha cambiado... Gracias a todos

Muy buenas, esperando que todos se encuentren bien.
Yo tenia varias cosas de Telegram, y todo se fue al demonio. La solución de harkonnen no supe implementarlas en mis sketch pero fue fácil adaptar el ejemplo de Jopapa.
Así que muchas gracias Jopapa, me has salvado, yo que no soy ducho en interpretar el uso de librerías he encontrado la solución gracias a tu aporte.
Saludos.