Блоки для Telegram - ESP8266, ESP32. 09.2020

Блоки коммуникации с сервером Телеграм, получения и отправки сообщений.

Пользовательские блоки для коммкникации и связи GSM, GPRS, IR, Bluetooth и другие
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Serg_Grn
Лейтенант
Сообщения: 333
Зарегистрирован: 11.02.2018{, 13:07}
Репутация: 36
Имя: Сергей

Блоки для Telegram - ESP8266, ESP32. 09.2020

#1

Сообщение Serg_Grn » 03.09.2020{, 17:59}

Автор блоков ussrsrtru, я только кое что добавил.
Основной блок осуществляет коммуникацию с сервером: в него записывается токен бота, он получает сообщение, ID и имя отправителя, ID сообщения, сигнал об успешном получении сообщения или об ошибке.
Есть два варианта основного блока, они отличаются только переменной токена бота - в первом варианте это вход блока, во втором - настраиваемый параметр.
Блок отправки работает совместно с основным блоком, на входы блока нужно подать ID отправителя, текст сообщения и команду отправки.
Подробное описание приведено в блоках.
Проверены мной на NodeMCU и ESP32.
TlgSend_5.3.0.1_(Code_-_Basic).ubi
(34.05 КБ) 193 скачивания
TlgBot_5.3.0.2Rpl_(Code_-_Basic).ubi
(3.57 МБ) 210 скачиваний
TlgBot_5.3.0.1Rpl_(Code_-_Basic).ubi
(3.6 МБ) 182 скачивания
Обновлено 30.09.20
Добавил блок, который проверяет соединение с сервером API Telegram.
Блок сделан на основе библиотеки CTBot.h.
Telegram_connect_(Code_-_Basic).ubi
(18.83 КБ) 165 скачиваний
Почему-то я не смог найти как эту функцию реализовать в библиотеке UniversalTelegramBot.h, может плохо смотрел... :)
P.S. Кстати, судя по описанию, библиотека CTBot.h заточена под ESP8266, однако у меня и на ESP32 всё работает :smile37:

Обновлено 5.10.20
Добавил вариант блока отправки сообщения с обратной связью - устанавливает выход в true при успешной отправке.
TlgSend_5.3.0.2_(Code_-_Basic).ubi
(50.37 КБ) 198 скачиваний
Обновлено 16.02.21
В посте #19 добавил блоки для ESP32 на основе библиотеки UniversalTelegramBot.h.
Последний раз редактировалось Serg_Grn 16.02.2021{, 11:52}, всего редактировалось 4 раза.

Аватара пользователя
ussrtk
Рядовой
Сообщения: 36
Зарегистрирован: 06.01.2017{, 12:25}
Репутация: 17

Блоки для Telegram - ESP8266, ESP32. 09.2020

#2

Сообщение ussrtk » 06.10.2020{, 10:12}

Круто, спасибо, что потратили время и нашли выход.
Я в последнее время этот вопрос отставил и очень рад, что есть люди, которым не все равно!
Вдвойне приятно, что вы тоже из Одессы...

31april
Рядовой
Сообщения: 9
Зарегистрирован: 27.10.2016{, 18:15}
Репутация: 0
Откуда: Обнинск
Имя: Игорь

Блоки для Telegram - ESP8266, ESP32. 09.2020

#3

Сообщение 31april » 07.10.2020{, 16:38}

В какой версии Flprog эти блоки будут работать? ...или в какой не будут

Serg_Grn
Лейтенант
Сообщения: 333
Зарегистрирован: 11.02.2018{, 13:07}
Репутация: 36
Имя: Сергей

Блоки для Telegram - ESP8266, ESP32. 09.2020

#4

Сообщение Serg_Grn » 07.10.2020{, 19:07}

31april писал(а):
07.10.2020{, 16:38}
В какой версии Flprog эти блоки будут работать?
Проверены на версии 7.1.1

radivilalbert
Рядовой
Сообщения: 26
Зарегистрирован: 17.07.2018{, 14:08}
Репутация: 2
Имя: Альберт

Блоки для Telegram - ESP8266, ESP32. 09.2020

#5

Сообщение radivilalbert » 03.11.2020{, 03:48}

Протестировал блоки в Flprog 7.1.1 и 6.3.1 в г. Москве
Бот отправляет сообщения в Телеграмм, но отправить боту сообщение не получается.

RusSanya
Рядовой
Сообщения: 15
Зарегистрирован: 14.09.2015{, 15:17}
Репутация: 0

Блоки для Telegram - ESP8266, ESP32. 09.2020

#6

Сообщение RusSanya » 07.11.2020{, 07:49}

Протестировал. Бот сообщения отправляет, но почему-то не получает сообщения. Может дело в версии CTbot.h? Какая версия нужна?

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Блоки для Telegram - ESP8266, ESP32. 09.2020

#7

Сообщение Sancho » 07.11.2020{, 08:16}

Для старта отправить /start
или попробуйте отправлять с / в начале - там даже специальная кнопка есть.
У меня на бот малике - шлёт статусы в групповой чат, или персонально значения на запрос.
На запросы в групповом отвечает только с / в начале, в персональном - без.
СпойлерПоказать
2020-11-07_08-13-55.png
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

RusSanya
Рядовой
Сообщения: 15
Зарегистрирован: 14.09.2015{, 15:17}
Репутация: 0

Блоки для Telegram - ESP8266, ESP32. 09.2020

#8

Сообщение RusSanya » 07.11.2020{, 08:52}

Пробовал всяко : сначала /start, потом команду. Команду с / и без. На выходе r_command - ничего нет, на r_chat - тоже. Бот живой, проверял через браузер. Вот как делаю:

Отправлено спустя 19 минут 55 секунд:
Так тоже ничего не принимает. Должен работать как эхо.

Отправлено спустя 11 минут 7 секунд:
Все-таки какая должна быть CTBot.h? У меня сейчас CTBot version=2.1.4. Лежит в каталоге CTBot-master

Отправлено спустя 4 часа 27 минут 57 секунд:
Посылал r_command в UART, подключался к com-порту - ВООБЩЕ ничего не приходит

Отправлено спустя 29 секунд:
это на ESP8266
Вложения
tbot1.jpg
tbot.jpg

Аватара пользователя
AlexCrane
Капитан
Сообщения: 895
Зарегистрирован: 20.10.2017{, 13:22}
Репутация: 294
Откуда: Ульяновск
Имя: Александр

Блоки для Telegram - ESP8266, ESP32. 09.2020

#9

Сообщение AlexCrane » 07.11.2020{, 17:16}

RusSanya, CtBot 2.1.3 вроде последняя
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....

RusSanya
Рядовой
Сообщения: 15
Зарегистрирован: 14.09.2015{, 15:17}
Репутация: 0

Блоки для Telegram - ESP8266, ESP32. 09.2020

#10

Сообщение RusSanya » 07.11.2020{, 17:23}

{
"name": "CTBot",
"keywords": "telegram, bot",
"description": "Simple Arduino Telegram BOT library for ESP8266/ESP32",
"homepage": "https://github.com/shurillu/CTBot",
"repository": {
"type": "git",
"url": "https://github.com/shurillu/CTBot.git"
},
"version": "2.1.4",
"authors": {
"name": "Stefano Ledda",
"email": "shurillu@tiscalinet.it"
},
"frameworks": "arduino",
"platforms": "esp8266,esp32",
"dependencies": {
"name": "ArduinoJson",
"version": "6.16.1"
}
}

ShishkaRoman
Рядовой
Сообщения: 44
Зарегистрирован: 18.06.2020{, 11:36}
Репутация: 1
Имя: Roman

Блоки для Telegram - ESP8266, ESP32. 09.2020

#11

Сообщение ShishkaRoman » 26.11.2020{, 00:09}

Как получить id бота?

Аватара пользователя
Phazz
Полковник
Сообщения: 2552
Зарегистрирован: 17.10.2016{, 15:38}
Репутация: 367
Откуда: Сургут
Имя: Анатолий

Блоки для Telegram - ESP8266, ESP32. 09.2020

#12

Сообщение Phazz » 26.11.2020{, 05:00}

Через @BotFather

KulibinOrsk
Лейтенант
Сообщения: 515
Зарегистрирован: 25.02.2018{, 08:48}
Репутация: 21
Откуда: Оренбург
Имя: Александр

Блоки для Telegram - ESP8266, ESP32. 09.2020

#13

Сообщение KulibinOrsk » 27.11.2020{, 10:07}

Sancho, приветствую. Вопрос возможно не в тему, но может кому то тоже интересно будет узнать - а сообщения из телеграмма принимает/обрабатывает контроллер или только в одну сторону все ?
Если совсем не в тему то вопрос можете удалить.

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Блоки для Telegram - ESP8266, ESP32. 09.2020

#14

Сообщение Sancho » 27.11.2020{, 10:59}

KulibinOrsk, Это телеграм бот для чатов. Соответственно, что-бы вести диалог, он должен понимать, о чём его спрашивают. Значит и принимает тоже.
Гитхаб
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

KulibinOrsk
Лейтенант
Сообщения: 515
Зарегистрирован: 25.02.2018{, 08:48}
Репутация: 21
Откуда: Оренбург
Имя: Александр

Блоки для Telegram - ESP8266, ESP32. 09.2020

#15

Сообщение KulibinOrsk » 27.11.2020{, 19:27}

Sancho, видимо я уже старею для этого дела ))) читал читал и так до конца и не понял всех возможностей и функционала для использования. Такое ощущение что какая завуалированная информация об этом идет. Или я не воспринимаю эту инфу. В утиль меня

jenikP
Рядовой
Сообщения: 28
Зарегистрирован: 06.11.2018{, 09:18}
Репутация: 1
Имя: Евгений

Блоки для Telegram - ESP8266, ESP32. 09.2020

#16

Сообщение jenikP » 30.11.2020{, 11:52}

KulibinOrsk писал(а):
27.11.2020{, 19:27}
Sancho, не понял всех возможностей и функционала для использования.
Блоки работают отлично. Команды, уведомления, запросы.

Вкратце: Создать бота, получить ID, прописать команды (бот). Создать проект, прописать ID бота, привязать команда к платам (выполнение по условию).
СпойлерПоказать
meteo.JPG

ShishkaRoman
Рядовой
Сообщения: 44
Зарегистрирован: 18.06.2020{, 11:36}
Репутация: 1
Имя: Roman

Блоки для Telegram - ESP8266, ESP32. 09.2020

#17

Сообщение ShishkaRoman » 01.12.2020{, 00:49}

Пытаюсь освоить ботов.
Подключится к сети подключаюсь и на этом всё. Для начала решил просто получить сообщение от бота и отправить его в юарт, ничего не получается. Получаю в юарт такой результат:
"192.168.0.103
47512


0"
Первая сторока - ip
2 - память
3 - текст сообщения с телеграма
4 - имя отправителя
5 - id

В чём проблема не пойму. Токен ввел. К сети подключился. Боту c телефона отправляю просто набор цифр, но читать и отправлять в юарт он не хочет.
Может с ботом какие то проблемы, но пробывал с разных пользователей отправлять данные.
Файл во вложении. Если будет у кого то возможность прошу глянуть.
Проверил отправку, отправка сообщений боту работает
Вложения
telega 3.2.flp
(1.91 МБ) 103 скачивания

Serg_Grn
Лейтенант
Сообщения: 333
Зарегистрирован: 11.02.2018{, 13:07}
Репутация: 36
Имя: Сергей

Блоки для Telegram - ESP8266, ESP32. 09.2020

#18

Сообщение Serg_Grn » 15.12.2020{, 18:08}

Хочу поделиться очень загадочной для меня ситуацией, может у кого было нечто подобное, попробуем совместно подумать в чём дело...
Суть: на ESP32 крутится бот, на основе библиотеки UniversalTelegramBot.h, работает как часы уже два месяца, 24 часа в сутки.
Тут вдруг ни с того ни с сего бот перестаёт реагировать на запросы с телефона, т.е. на выходах блока, где текст входящего сообщения и chatID - ничего нет. При этом с контроллера боту сообщения нормально отправляются и доходят - на телефон я их получаю.
Как я ни бился, перепроверял код, заменил полностью на новую ESP32, эффекта нет - бот работает только в одну сторону - на отправку, на приём - нет.
Проблема решилась для меня очень неожиданно - сменой бота. Т.е. я просто создал нового бота, поменял в коде токен - и всё заработало!
Ситуация совершенно непонятна, если кто с таким сталкивался или просто понимает больше меня :) , прошу откликнуться, а то я пока просто вишу...

Serg_Grn
Лейтенант
Сообщения: 333
Зарегистрирован: 11.02.2018{, 13:07}
Репутация: 36
Имя: Сергей

Блоки для Telegram - ESP8266, ESP32. 09.2020

#19

Сообщение Serg_Grn » 16.02.2021{, 11:47}

Почему-то я не могу больше добавить файлы в заглавный пост, поэтому добавляю сюда.

Блоки на основе библиотеки UniversalTelegramBot.h для ESP32.
В основном блоке только токен. В блоке приёма устанавливаем период обращения к серверу Телеграм (мс) и команду работы блока. В блоке отправки, при успешной отправке, на выходе устанавливается true.
Tlg32_1_main_(Code_-_Basic).ubi
(3.54 МБ) 122 скачивания
Tlg32_1_in_(Code_-_Basic).ubi
(3.71 МБ) 114 скачиваний
Tlg32_send_2_(Code_-_Basic).ubi
(44.44 КБ) 124 скачивания

Аватара пользователя
Sevast
Сержант
Сообщения: 145
Зарегистрирован: 21.06.2017{, 15:57}
Репутация: 5

Блоки для Telegram - ESP8266, ESP32. 09.2020

#20

Сообщение Sevast » 09.03.2021{, 16:52}

Кто знает, может бот звонить?
С ESP8266 сообщение отправляется, бот получает и соответственно телефон квакает.
Но надо чтобы при получении сообщения, от бота был звонок, определенному пользователю, так как квакание можно пропустить. Может есть готовый блок?

Ответить

Вернуться в «Коммуникация и связь»