Skip to content

Commit 080126a

Browse files
committed
upd
1 parent 8038eb5 commit 080126a

File tree

3 files changed

+14
-3
lines changed

3 files changed

+14
-3
lines changed

README.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
[![Foo](https://img.shields.io/badge/Version-2.18-brightgreen.svg?style=flat-square)](#versions)
1+
[![Foo](https://img.shields.io/badge/Version-2.19-brightgreen.svg?style=flat-square)](#versions)
22
[![Foo](https://img.shields.io/badge/Website-AlexGyver.ru-blue.svg?style=flat-square)](https://alexgyver.ru/)
33
[![Foo](https://img.shields.io/badge/%E2%82%BD$%E2%82%AC%20%D0%9D%D0%B0%20%D0%BF%D0%B8%D0%B2%D0%BE-%D1%81%20%D1%80%D1%8B%D0%B1%D0%BA%D0%BE%D0%B9-orange.svg?style=flat-square)](https://alexgyver.ru/support_alex/)
44
[![Foo](https://img.shields.io/badge/README-ENGLISH-blueviolet.svg?style=flat-square)](https://github-com.translate.goog/GyverLibs/FastBot?_x_tr_sl=ru&_x_tr_tl=en)
@@ -559,8 +559,10 @@ FB_Time t(bot.getUnix(), 3);
559559
С версии библиотеки 2.13 появилось обновление прошивки "по воздуху" (OTA) через чат. Для обновления нужно:
560560
- Скомпилировать программу в файл: *Arduino IDE/Скетч/Экспорт бинарного файла* (файл **.bin** появится в папке со скетчем)
561561
- Отправить файл в чат с ботом, можно добавить подпись
562+
- Файл может быть переслан из другого чата
562563
- Файл будет обработан как обычное входящее сообщение от пользователя
563564
- Подпись к файлу можно получить из поля `text`
565+
- Название файла можно получить из поля `fileName`
564566
- Будет поднят флаг `OTA`
565567
- Для запуска процесса обновления нужно вызвать `update` внутри обработчика сообщений
566568
- В тот же чат чат будет отправлен статус обновления (*OK* или *error*)
@@ -577,6 +579,13 @@ if (msg.OTA && msg.text == "update") bot.update();
577579
if (msg.OTA && msg.chatID == "123456") bot.update();
578580
```
579581

582+
### Сжатие бинарника
583+
Если прошивка весит много - её можно сжать в gzip:
584+
- Рекомендуемый уровень сжатия - 9
585+
- Имя файла должно оканчиваться на *.bin.gz*
586+
- Файл точно так же отправляется в чат с ботом или пересылается ему
587+
- В прошивке перед подключением всех библиотек нужно объявить `#define ATOMIC_FS_UPDATE`
588+
580589
<a id="textmode"></a>
581590
## Оформление текста
582591
Библиотека поддерживает оформление текста в сообщениях. Разметка оформления выбирается при помощи `setTextMode(mode)`, где `mode`:
@@ -684,6 +693,7 @@ void loop() {
684693
- v2.17: вывод текста сообщения, на которое ответил юзер + корректная работа с menu в группах
685694
- v2.17.1: мелкий фикс https://github.com/GyverLibs/FastBot/issues/12
686695
- v2.18: добавлен режим FB_DYNAMIC: библиотека дольше выполняет запрос, но занимает на 10 кб меньше памяти в SRAM
696+
- v2.19: поддержка OTA со сжатием gzip
687697

688698
<a id="feedback"></a>
689699
## Баги и обратная связь

library.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name=FastBot
2-
version=2.18
2+
version=2.19
33
author=AlexGyver <alex@alexgyver.ru>
44
maintainer=AlexGyver <alex@alexgyver.ru>
55
sentence=Simple library for Telegram bot (messages and menus)

src/FastBot.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,7 @@
8585
v2.17: вывод текста сообщения, на которое ответил юзер + корректная работа с menu в группах
8686
v2.17.1: мелкий фикс https://github.com/GyverLibs/FastBot/issues/12
8787
v2.18: добавлен режим FB_DYNAMIC: библиотека дольше выполняет запрос, но занимает на 10 кб меньше памяти в SRAM
88+
v2.19: поддержка OTA со сжатием gzip
8889
*/
8990

9091
/*
@@ -879,7 +880,7 @@ class FastBot {
879880
if (_file_ptr) _file_ptr = nullptr;
880881
if (find(str, file, textPos, F("\"file_name\":\""), '\"', IDpos)) {
881882
fileName = file;
882-
if (file.endsWith(F(".bin"))) {
883+
if (file.endsWith(F(".bin")) || file.endsWith(F(".bin.gz"))) {
883884
find(str, file, textPos, F("\"file_id\":\""), '\"', IDpos);
884885
_file_ptr = &file;
885886
_otaID = chatID;

0 commit comments

Comments
 (0)