99#define BOT_TOKEN " 2654326546:asjhAsfAsfkllgUsaOuiz_axfkj_AsfkjhB"
1010#define CHAT_ID " 574578754"
1111
12- #include < ESP8266WiFi.h>
13- #include " FastBot.h"
12+ #include < FastBot.h>
1413FastBot bot (BOT_TOKEN);
1514
16- // FastBot bot(токен, лимит, порог, период);
17- // токен - уникальный код бота, берётся у BotFather
18- // лимит - количество сообщений, получаемое из одного запроса (по умолч. 10)
19- // порог - количество символов, при котором API запрос будет считаться слишком большим и будет пропущен (по умолч. 10000)
20- // период - период автоматического опроса бота в мс (по умолч. 1000)
21-
2215void setup () {
2316 connectWiFi ();
24-
17+
2518 // можно сменить токен
2619 // bot.setToken(BOT_TOKEN);
27-
20+
2821 // можно сменить размер буфера на (приём, отправку), по умолч. 512, 512
2922 // bot.setBufferSizes(1024, 512);
30-
23+
3124 // установить ID чата, чтобы принимать сообщения только из него
3225 // узнать ID можно из ручного запроса в браузере
3326 bot.setChatID (CHAT_ID); // передай "" (пустую строку) чтобы отключить проверку
3427
3528 // можно указать несколько ID через запятую
36- // bot.setChatID("123456,7891011,12131415");
29+ // bot.setChatID("123456,7891011,12131415");
3730
3831 // подключаем функцию-обработчик
3932 bot.attach (newMsg);
@@ -45,8 +38,8 @@ void setup() {
4538 // bot.sendMessage("Hello, World! External ID", "123456,7891011,12131415");
4639
4740 // показать юзер меню (\t - горизонтальное разделение кнопок, \n - вертикальное
48- bot.showMenu (" Menu1 \t Menu2 \t Menu3 \n Menu4" );
49-
41+ // bot.showMenu("Menu1 \t Menu2 \t Menu3 \n Menu4");
42+
5043 // аналогично в указанный конкретно ЗДЕСЬ чат/чаты
5144 // bot.showMenu("Menu1 \t Menu2 \t Menu3 \n Menu4", "123456,7891011,12131415");
5245
@@ -57,32 +50,32 @@ void setup() {
5750
5851 // отправить инлайн меню (\t - горизонтальное разделение кнопок, \n - вертикальное
5952 // (текст сообщения, кнопки)
60- bot.inlineMenu (" Choose wisely" , " Answer 1 \t Answer 2 \t Answer 3 \n Answer 4" );
53+ // bot.inlineMenu("Choose wisely", "Answer 1 \t Answer 2 \t Answer 3 \n Answer 4");
6154
62- // аналогично в указанный конкретно чат/чаты
63- // bot.inlineMenu("Choose wisely", "Answer 1 \t Answer 2 \t Answer 3 \n Answer 4", "123456,7891011,12131415");
55+ // инлайн меню с коллбэком
56+ String menu1 = F (" Menu 1 \t Menu 2 \t Menu 3 \n Back" );
57+ String cback1 = F (" action1,action2,action3,back" );
58+ bot.inlineMenuCallback (" Menu 1" , menu1, cback1);
6459}
6560
6661// обработчик сообщений
67- // создать свою функцию вида имя(FB_msg& сообщение)
6862void newMsg (FB_msg& msg) {
6963 // выводим ID чата, имя юзера и текст сообщения
70- Serial.print (msg.chatID ); // ID чата
64+ Serial.print (msg.chatID ); // ID чата
7165 Serial.print (" , " );
7266 Serial.print (msg.username ); // логин
7367 Serial.print (" , " );
7468 Serial.print (msg.first_name ); // имя
7569 Serial.print (" , " );
70+ Serial.print (msg.usrID ); // ID юзера
71+ Serial.print (" , " );
7672 Serial.print (msg.ID ); // ID сообщения
7773 Serial.print (" , " );
7874 Serial.println (msg.text ); // текст
7975}
8076
81- // можно вручную дёргать по одному сообщению при помощи tickManual
82- // тогда "лимит" при инициализации поставить 1
8377void loop () {
84- // тикаем в луп
85- bot.tick ();
78+ bot.tick (); // тикаем в луп
8679}
8780
8881void connectWiFi () {
@@ -98,13 +91,3 @@ void connectWiFi() {
9891 }
9992 Serial.println (" Connected" );
10093}
101-
102-
103- /*
104- Статусы tick:
105- 0 - ожидание
106- 1 - ОК
107- 2 - Переполнен по ovf
108- 3 - Ошибка телеграм
109- 4 - Ошибка подключения
110- */
0 commit comments