Skip to content

Commit 4eca903

Browse files
committed
upd
1 parent ef1cebc commit 4eca903

File tree

5 files changed

+45
-5
lines changed

5 files changed

+45
-5
lines changed

docs/1.main.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,13 @@ void detachResult();
101101
void attachRaw(CallbackRaw callback);
102102
103103
// отключить обработчик ответа сервера
104-
void detachRaw() ;
104+
void detachRaw();
105+
106+
// подключить обработчик ошибки сервера void cb(Text error) {}
107+
void attachError(CallbackError callback);
108+
109+
// отключить обработчик ошибки
110+
void detachError();
105111
// ============================== TICK ==============================
106112
107113
// тикер, вызывать в loop. Вернёт true, если был обработан Update
@@ -619,6 +625,12 @@ void setInlineMenu(InlineMenu& menu);
619625
// удалить обычное меню
620626
void removeMenu();
621627

628+
// установить режим текста Markdown
629+
void setModeMD();
630+
631+
// установить режим текста HTML
632+
void setModeHTML();
633+
622634
// ===================================
623635

624636
// включить превью для ссылок (умолч. 1)

library.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name=FastBot2
2-
version=1.0.10
2+
version=1.0.11
33
author=AlexGyver <[email protected]>
44
maintainer=AlexGyver <[email protected]>
55
sentence=Fast and universal Arduino/ESP8266/ESP32 library for Telegram bot

src/core/core.h

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,12 @@ enum class Poll : uint8_t {
2828
class Core : public Http {
2929
protected:
3030
#ifdef __AVR__
31+
typedef void (*CallbackError)(Text text);
3132
typedef void (*CallbackRaw)(Text response);
3233
typedef void (*CallbackResult)(gson::Entry& entry);
3334
typedef void (*CallbackUpdate)(Update& upd);
3435
#else
36+
typedef std::function<void(Text text)> CallbackError;
3537
typedef std::function<void(Text response)> CallbackRaw;
3638
typedef std::function<void(gson::Entry& entry)> CallbackResult;
3739
typedef std::function<void(Update& upd)> CallbackUpdate;
@@ -188,6 +190,17 @@ class Core : public Http {
188190
void detachRaw() {
189191
_cbRaw = nullptr;
190192
}
193+
194+
// подключить обработчик ошибки сервера void cb(Text error) {}
195+
void attachError(CallbackError callback) {
196+
_cbErr = callback;
197+
}
198+
199+
// отключить обработчик ошибки
200+
void detachError() {
201+
_cbErr = nullptr;
202+
}
203+
191204
// ============================== TICK ==============================
192205
// тикер, вызывать в loop. Вернёт true, если был обработан Update
193206
bool tick() {
@@ -399,6 +412,7 @@ class Core : public Http {
399412
CallbackUpdate _cbUpdate = nullptr;
400413
CallbackResult _cbResult = nullptr;
401414
CallbackRaw _cbRaw = nullptr;
415+
CallbackError _cbErr = nullptr;
402416

403417
#ifndef FB_NO_FILE
404418
ota_t _ota = ota_t::None;
@@ -422,8 +436,11 @@ class Core : public Http {
422436
thisBot = nullptr;
423437
}
424438
if (res.isObject()) _parseResult(res);
439+
} else {
440+
if (_cbErr && res._parser[tg_apih::ok]) _cbErr(res._parser[tg_apih::description]);
425441
}
426442
return res;
443+
427444
} else if (resp.type() == F("application/octet-stream")) {
428445
FB_LOG("got file");
429446
return Result(resp.body());

src/core/result.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,9 @@ class Result : public gson::Entry {
5656
_reader = res._reader;
5757
}
5858

59-
private:
6059
gson::ParserStream _parser;
60+
61+
private:
6162
StreamReader _reader;
6263

6364
bool parseJson() {

src/core/types/Message.h

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@
33
#include <GSON.h>
44
#include <StringUtils.h>
55

6+
#include "../api.h"
7+
#include "../packet.h"
68
#include "FastBot2Client_class.h"
79
#include "InlineMenu.h"
810
#include "Menu.h"
911
#include "Message_class.h"
10-
#include "../api.h"
11-
#include "../packet.h"
1212

1313
namespace fb {
1414

@@ -78,6 +78,16 @@ class Message {
7878
_remove_menu = 1;
7979
}
8080

81+
// установить режим текста Markdown
82+
void setModeMD() {
83+
mode = Mode::MarkdownV2;
84+
}
85+
86+
// установить режим текста HTML
87+
void setModeHTML() {
88+
mode = Mode::HTML;
89+
}
90+
8191
// ===================================
8292

8393
// включить превью для ссылок (умолч. 1)

0 commit comments

Comments
 (0)