UniversalTelegramBot.h молю о помощи
- Войдите на сайт для отправки комментариев
Чт, 11/11/2021 - 23:15
Уже много времени ищу пример telegram bot под ESP32 с обратным отзывом: в телеге пишем число в определенном пункте(НАСТРОЙКА МОЩНОСТИ) и возвращаем на плату, и также с кнопкой назад не разобрался. За пример буду благодарен. Понимаю функционал минимум но что-то не идет уже неделю. void handleNewMessages(int numNewMessages) { int getUpdate (long offset); for (int i = 0; i < numNewMessages; i++) { String chat_id = bot.messages[i].chat_id; if (chat_id != CHAT_ID) { bot.sendMessage(chat_id, "Неавторизованный пользователь", ""); continue; } connection(); String text = bot.messages[i].text; if (text == "/start") { String keyboardJson = "[[\"СТАТУС\"],[\"ВЕНТИЛЯТОР ВКЛ\", \"ВЕНТИЛЯТОР ВЫКЛ\"], [\"НАСТРОЙКА МОЩНОСТИ\"]]"; bot.sendMessageWithReplyKeyboard(chat_id, "ПРИВЕТ:)", "", keyboardJson, true); bot.sendMessage(chat_id, "Vape Station ONLINE", ""); connection(); } if (text == "СТАТУС") { bot.sendMessage(chat_id, "Мощность: " + String(power), ""); bot.sendMessage(chat_id, "Температура: + String(temp)", ""); bot.sendMessage(chat_id, "БАТАРЕЯ: " + String(battery_read()), ""); connection(); if (fanStatus) { bot.sendMessage(chat_id, "ВЕНТИЛЯТОР ВКЛ", ""); connection(); } else { bot.sendMessage(chat_id, "ВЕНТИЛЯТОР ВЫКЛ", ""); connection(); } } if (text == "ВЕНТИЛЯТОР ВКЛ") { digitalWrite(fanPin, HIGH); // turn the LED on (HIGH is the voltage level) fanStatus = 1; bot.sendMessage(chat_id, "Вентилятор включен", ""); connection(); } if (text == "ВЕНТИЛЯТОР ВЫКЛ") { fanStatus = 0; connection(); digitalWrite(fanPin, LOW); // turn the LED off (LOW is the voltage level) bot.sendMessage(chat_id, "Вентилятор выключен", ""); connection(); } if (text == "НАСТРОЙКА МОЩНОСТИ") { String keyboardJson = "[[\"НАЗАД\"]]"; bot.sendMessage(chat_id, "Введите мощность от 1 до 100:", ""); if (text) { Serial.println (text.toInt()); power = text.toInt(); } else { bot.sendMessage(chat_id, "Введите числовое значение от 1 до 100:", ""); } connection(); } ////////////////////////////////////////////// if (text == "число") { //////////////////////////////////////////////// Serial.println (text.toInt()); //////////////////////////////////////////////// power = text.toInt(); /////////////////////////////////////////////// } ////////////////////////////////////////////// else { ////////////////////////////////////////////// bot.sendMessage(chat_id, "Введите числовое значение от 1 до 100:", "");
// } } }
Если вы хотите, чтобы вам помогли, скетч должен быть выложен полностью, а не выдержку. И по крайней мере у вас он должен компилироваться.