Skip to content

Commit 7bfdf63

Browse files
committed
upd
1 parent 74b16fc commit 7bfdf63

File tree

3 files changed

+58
-19
lines changed

3 files changed

+58
-19
lines changed

README.md

Lines changed: 55 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -11,22 +11,51 @@
1111

1212
# FastBot
1313
Многофункциональная быстрая библиотека для телеграм бота на esp8266/esp32
14-
- Работает на стандартных библиотеках
15-
- Опциональный "белый список" ID чатов
16-
- Проверка обновлений вручную или по таймеру
17-
- Отправка/удаление/редактирование/ответ на сообщения
18-
- Чтение и отправка в чатах, группах, каналах
19-
- Изменение названия и описания чата
20-
- Закрепление/открепление сообщений
21-
- Отправка стикеров
22-
- Сообщения с форматированием markdown/html
23-
- Вывод обычного меню
24-
- Вывод инлайн меню с поддержкой кнопок-ссылок
25-
- Поддержка Unicode (другие языки + эмодзи) для входящих сообщений
26-
- Встроенный urlencode для исходящих сообщений
27-
- Встроенные часы реального времени с синхронизацией от сервера Telegram
28-
- Возможность OTA обновления прошивки .bin файлом из чата Telegram (firmware и SPIFFS)
29-
- Отправка файлов из памяти в чат (+ редактирование)
14+
1. FastBot
15+
1. Совместимость
16+
1. Создание и настройка бота
17+
2. Ограничения
18+
1. Лимиты Telegram
19+
2. Прочее
20+
3. Вывод графики
21+
4. Документация и проекты
22+
5. Сравнение с Universal-Arduino-Telegram-Bot
23+
6. Содержание
24+
7. Установка
25+
1. Обновление
26+
8. Инициализация
27+
9. Документация
28+
10. Использование
29+
11. Отправка сообщений
30+
12. Парсинг сообщений
31+
1. Белый список
32+
13. Тикер
33+
14. Минимальный пример
34+
15. Обращение к сообщениям
35+
16. Отправка стикеров
36+
17. Меню
37+
18. Обычное меню
38+
19. Инлайн меню
39+
20. Инлайн меню с коллбэком
40+
21. Ответ на коллбэк
41+
22. Модуль времени
42+
23. Время получения сообщения
43+
24. Часы реального времени
44+
25. Обновление прошивки из чата
45+
1. Примеры сценариев обновления прошивки
46+
2. Примеры сценариев обновления SPIFFS
47+
3. Сжатие бинарника
48+
26. Оформление текста
49+
27. Отправка файлов (v2.20+)
50+
1. Файл из буфера
51+
2. Файл из памяти
52+
28. Скачивание файлов (v2.20+)
53+
29. Местоположение
54+
30. Трюки
55+
1. Перезагрузка
56+
2. Пропуск "пропущенных" сообщений на основе времени
57+
31. Версии
58+
32. Баги и обратная связь
3059

3160
### Совместимость
3261
ESP8266 (SDK v2.6+), ESP32
@@ -127,13 +156,15 @@ ESP8266 (SDK v2.6+), ESP32
127156
- Вручную: **удалить папку со старой версией**, а затем положить на её место новую. "Замену" делать нельзя: иногда в новых версиях удаляются файлы, которые останутся при замене и могут привести к ошибкам!
128157

129158
<a id="init"></a>
159+
130160
## Инициализация
131161
```cpp
132162
FastBot bot;
133163
FastBot bot(токен); // с указанием токена
134164
```
135165
136166
<a id="docs"></a>
167+
137168
## Документация
138169
```cpp
139170
// ============== НАСТРОЙКИ ==============
@@ -180,6 +211,9 @@ uint8_t sendSticker(String stickerID, String id);
180211
// ответить на callback текстом (text) и режимом (alert): FB_NOTIF - уведомление в чате, FB_ALERT - окно с кнопкой ОК
181212
uint8_t answer(String text, bool alert);
182213
214+
// не отвечать автоматически на query этого апдейта
215+
void noAnswer();
216+
183217
//отправить уведомление о том, что бот печатает сообщение
184218
uint8_t sendTyping(const String& id);
185219
@@ -383,8 +417,10 @@ String FB_64str(int64_t id); // перевод из int64_t в String
383417
```
384418

385419
<a id="usage"></a>
420+
386421
## Использование
387422
<a id="send"></a>
423+
388424
## Отправка сообщений
389425
Для отправки в чат (сообщения, стикеры, меню и так далее) обязательно должен быть указан ID чата, в который будет осуществляться отправка. Можно указать
390426
несколько ID через запятую, в пределах одной строки. Есть два способа указать ID:
@@ -404,6 +440,7 @@ bot.sendMessage("Hello!", "112233"); // уйдёт в "112233"
404440
> Примечание: Телеграм разделяет текст на несколько сообщений, если длина текста превышает ~4000 символов! Эти сообщения будут иметь разный messageID в чате.
405441
406442
<a id="inbox"></a>
443+
407444
## Парсинг сообщений
408445
Сообщения автоматически запрашиваются и читаются в `tick()`, при поступлении нового сообщения вызывается указанная функция-обработчик:
409446
- Создаём в скетче свою функцию вида `void функция(FB_msg& сообщение)`
@@ -426,6 +463,8 @@ bot.sendMessage("Hello!", "112233"); // уйдёт в "112233"
426463
- `String fileUrl` - адрес файла для загрузки
427464
- `bool OTA` - запрос на OTA обновление (получен .bin файл)
428465
- `uint32_t unix` - время сообщения
466+
- `uint32_t update_id` - id апдейта
467+
- `String query_id` - id query
429468

430469
А также `String toString()` - вся информация из сообщения одной строкой, удобно для отладки (с версии 2.11)
431470

src/FastBot.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1328,7 +1328,7 @@ class FastBot {
13281328
first_name,
13291329
first_name,
13301330
_lastUsrMsg,
1331-
(ID + counter - 1),
1331+
ID + (int32_t)(counter - 1),
13321332
query,
13331333
#ifdef FB_WITH_LOCATION
13341334
fb_location

src/datatypes.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,8 @@ struct FB_msg {
4040
String& last_name; // фамилия
4141
int32_t ID; // ID сообщения
4242

43-
uint32_t update_id;
44-
String& query_id;
43+
uint32_t update_id; // id апдейта
44+
String& query_id; // id query
4545

4646
#ifdef FB_WITH_LOCATION
4747
FB_Location location;

0 commit comments

Comments
 (0)