FastBot. Обсуждение библиотеки

Avtozapusk

✩✩✩✩✩✩✩
26 Дек 2022
2
0
@MKontrol,

Скорее всего сообщение Error связано с размером файла. Например:если я закидываю в чат файл размером 467 кб то выдается сообщение

OTA firmware...

Error

а если я уже закину в чат файл с размером 403 кБ то все Ок .
OTA firmware...

OK

Моя плата ESP-01 настройки LittleFS "1 MB (FS:64KB OTA:~470KB)"

Пока что не разобрался где размеры свободной памяти под этот файл обновления сверять
 

MartyArty

✩✩✩✩✩✩✩
22 Июл 2022
2
1
Подскажите решение такой задачи.
Имеется камера наблюдения(в локальной сети) и по ссылке на нее вида http://192.168.1.*/snapchot.jpg возвращает JPG ~ 300 кб

Как принять в буфер этот JPG и соответственно отправить в бот sendFile(uint8_t* buf, uint32_t length, FB_FileType type, const String& name, const String& id); не используя файловую систему, только задействовав буфер. NodeMCU или wemos d1 mini, на esp8266 в той же сети что и камера.

p.s. пробовал получить данные стандартным примером StreamHTTPClient. Но моих знаний недостаточно чтоб разобраться с типами.
p.s. или может вообще не в ту степь смотрю.
 

Rom4n

✩✩✩✩✩✩✩
27 Фев 2023
1
0
Привет.
Подскажите как и куда в этот код добавить отсчет времени для отправки сообщения по таймеру самим ботом?
К примеру каждый час отправлять значения переменных.

Kol:
#define WIFI_SSID "login"
#define WIFI_PASS "pass"
#define BOT_TOKEN "token"
#define CHAT_ID "chatID"
#include <FastBot.h>
FastBot bot(BOT_TOKEN);

void setup() {
  connectWiFi();
  bot.setChatID(CHAT_ID); // передай "" (пустую строку) чтобы отключить проверку
  bot.attach(newMsg);
  bot.sendMessage("Hello, World!");
}
// обработчик сообщений
void newMsg(FB_msg& msg) {
  Serial.println(msg.toString());
}

void loop() {
  bot.tick();   // тикаем в луп
}

void connectWiFi() {
  delay(2000);
  Serial.begin(115200);
  Serial.println();
  WiFi.begin(WIFI_SSID, WIFI_PASS);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
    if (millis() > 15000) ESP.restart();
  }
  Serial.println("Connected");
}
 
Изменено:

_Quasar_

✩✩✩✩✩✩✩
30 Июл 2021
52
0
Вопрос касаемо получения времени из телеграмм бота.
вот я запрашиваю время
FB_Time t = bot.getTime(3);
Serial.print(t.timeString());
и все выводит.
Но пытаюсь эти значения записать в переменную
status = t.timeString;
и потом ее вывести
Serial.print(status);
выдает ошибку
Compilation error: cannot convert 'FB_Time::timeString' from type 'String (FB_Time::)()' to type 'unsigned char'

Знаний мало.. Не совсем понимаю как эти данные записать в строковую переменную , чтобы потом с ней работать.
 
Изменено:

Almax

✩✩✩✩✩✩✩
14 Сен 2022
7
2
А подскажите, возможно ли чтобы боты на ESP общались между собой через группу в телеграме, тоесть, один бот присылает в группу сообщение, а второй его читает и получает
 

isclean

✩✩✩✩✩✩✩
17 Мар 2022
8
0
Доброго времени суток, столкнулся с непонятной ситуацией, а именно когда заливаю стандартный пример из библиотеки для отправки фото на esp32 cam, все без проблем работает но стоит подключить обработчик сообщений, так фото перестают отправляться. Я хотел сделать чтобы при отправке команды приходило фото. При этом подобные действия работают на библиотеке универсал тг бот. Как это побороть?
 

gidiara666

★✩✩✩✩✩✩
5 Май 2023
61
13
Вот положа руку на сердце: зачем человек старался, пилил библиотеку и никому-никому не сказал, и пример не написал, как из Telegram при помощи FastBot получить циферку и использовать её как значение в программе? В чём прикол??
 

astrosander

✩✩✩✩✩✩✩
29 Июн 2023
2
0
Подскажите пожалуйста, как можно узнать точно время отправки сообщения пользователем?
 

Homo Faber

✩✩✩✩✩✩✩
9 Мар 2022
15
0
Здравствуйте, уважаемые знатоки!
Написал скетч, разработал плату... Но "небратья" обрубили работу Blynk. Всё меня устраивало, всё прекрасно работало... Сейчас подбираю новую платформу, но во всех есть проблема: отсутствие PUSH-сообщений о событиях. Решил подключить FastBot, дабы выдавать сообщения через Telegram. Использую связку ArduinoMega+ESP-01. Загрузил пример, но, как говорится "буря небо матом кроет...", требует дополнительные библиотеки. Часть удалось найти, но не все. Меня терзают смутные сомнения, что библиотека в такой связке работать не будет.
Может быть кто ни будь из форумчан подскажет, как её, библиотеку, использовать в такой связке. Или кинет какую либо идею для этой связки.
Всем откликнувшимся, заранее спасибо!
 

vortigont

★★★★★★✩
24 Апр 2020
1,022
542
Saint-Petersburg, Russia
Вообще если ожидаете помощи, то не помешало бы оформить свой вопрос в более связанный по смыслу текст окромя "буря небо матом кроет..."
Что есть связка из ArduinoMega+ESP-01? И где из этих двух разных платформ вы собираетесь эту билиотеку? Кстати какую библиотеку? Было бы хорошим тоном дать ссылку на библиотеку с которой у вас проблемы дабы народ за вас не гулил в угадайку.
Если имеется ввиду вот эта библиотека, то там английским по белому написано Fast ESP8266/ESP32 library, как вы хотите её использовать на АрдуиноМега - не понятно.
 

Homo Faber

✩✩✩✩✩✩✩
9 Мар 2022
15
0
@vortigont, FastBot - это разработка Алекса Гивера. К сожалению у меня нет доступа к той части сайта (необходимо купить набор Гивера). А платить почти 5 000 - это для меня маленько разорительно.
Мдя, факир был пьян и фокус не удался...
Так может подкинете какую ни будь идею по подключениюArduinoMega к TelegramBot?
 

poty

★★★★★★✩
19 Фев 2020
3,237
942

@Homo Faber, ничего не понимаю. Библиотека в свободном доступе (например, на GitHub, второе место привёл ранее
@vortigont). Какой такой раздел Вам недоступен?
 

vortigont

★★★★★★✩
24 Апр 2020
1,022
542
Saint-Petersburg, Russia
может подкинете какую ни будь идею по подключениюArduinoMega к TelegramBot
Какую идею вы ожидаете услышать? ArduinoMega плата без возможности доступа к сети. Зачем пытаться натянуть сову на глобус - возмите плату на ESP32 и используйте вышеупомянутую библиотеку.
Если хотите идти сложным путём, то у вас уже всё есть - связка из меги и есп01, передавайте между ними необходимые данные и отправляйте в телеграм-бот через есп01. Протокол передачи/приема сообщений вам придется разработать и реализовать самому. Но как по мне это все равно что вычерпать поварешкой кашу из кастрлюли на землю, что бы потом есть её руками в перемешку с землей ссылаясь на отсутствие тарелки и ложки.
 

Homo Faber

✩✩✩✩✩✩✩
9 Мар 2022
15
0
@poty,Библиотек скачал, с этим проблем нет. Проблема в том, что при компиляции начала требовать дополнительные библиотеки и тут-то и начались проблемы. Не уверен, что нашёл именно те библиотеки, что нужны (очень много библиотек с одинаковыми названиями от разных авторов), но вроде всё проходило более-менее удачно. Но последнюю библиотек <Update.h> так и не нашёл. Есть много с похожими названиями, но какую конкретно использовать - непонятно.
 

Homo Faber

✩✩✩✩✩✩✩
9 Мар 2022
15
0
@vortigont, Всё дело в том, что на ESP32 очень мало входов-выходов, и к тому же - питание 3,3 В. В схеме используются много реле и далеко не все экземпляры соглашаются работать с таким напряжением, так как рассчитаны на 5 В.
 

vortigont

★★★★★★✩
24 Апр 2020
1,022
542
Saint-Petersburg, Russia
это либа входит в ядро ардуино от 8266/есп32 и предназначенна для обновления прошивки по воздуху, её не надо отдельно ставить. Вы же не пытаетесь ее на Мегу вкрячить?

на ESP32 очень мало входов-выходов, и к тому же - питание 3,3 В
ну если вам проще городить огород из 2х разных плат, поддерживать две прошивки и как-то гонять данные между ними вместо того что бы решить электрическую задачу за счет копеечного расширителя портов/регистра сдвига, то даже не знаю чем вам помочь. Страдайте с библиотеками и прочим - this is the way :oops:
 

Старик Похабыч

★★★★★★★
14 Авг 2019
4,267
1,303
Москва
Может и 4 , может и 20. Никто кроме вас задачи не знает. Если не подходит - берите связку mega+esp , esp ботом будет управлять и получать данные от меги .
Или поискать на большее кол-во портов, расширители они разные есть.
 

poty

★★★★★★✩
19 Фев 2020
3,237
942
@Homo Faber, это странно, на вопросы Вы не отвечаете, информации не даёте. Возьмите отдельно Ваш ESP и запустите уведомление с помощью библиотеки на нём. Примеры там есть, алгоритм действий - тоже. А потом уже привязывайте Вашу Мега для передачи с неё актуальных сигналов.
Но я бы подключил все датчики к ESP, даже в варианте с 4 аналоговыми платами и "дополнительными" цифровыми портами это будет меньше, чем Мега и исключается дополнительное программирование внешнего процессора и протокола связи между ним и ESP. Если у Вас это уже сделано (взаимодействие двух процессоров) изменять, понятное дело, не стоит. Хотя любой проект после реализации можно заново осмыслить и упростить.
 
  • Лойс +1
Реакции: vortigont

Homo Faber

✩✩✩✩✩✩✩
9 Мар 2022
15
0
@poty, Вопросы я уже осветил, насколько мог. Дело в том, что всё работает, только нет связи. Точнее была, через Blynk, только похерили её и сейчас Blynk в России недоступен. Поэтому задумал перейти на другую платформу, но нигде нет PUSH сообщений о событиях. Поэтому решил прикрутить Telegram, в качестве костылей для сообщений. Хотя если подскажите хорошую платформу с PUSH, то очень мне поможете. А пока приходится работать в автономе...
 

vortigont

★★★★★★✩
24 Апр 2020
1,022
542
Saint-Petersburg, Russia
@Homo Faber, а что в вашем понимании есть "PUSH сообщения о событиях"? Это набор абстрактных слов без конкретного приложения.
Ну вот вам навскидку несколько протоколов на базе которых можно реализовать PUSH/PULL модель:
- MQTT
- WebSocket
- SSE

ну или SNMP traps для особо искушенных :)