Телеграмма для Mikrotik...

Здесь выкладываем скрипты
Правила форума
Уважаемые Пользователи форума, обратите внимание!
Ни при каких обстоятельствах, Администрация форума, не несёт ответственности за какой-либо, прямой или косвенный, ущерб причиненный в результате использования материалов, взятых на этом Сайте или на любом другом сайте, на который имеется гиперссылка с данного Сайта. Возникновение неисправностей, потерю программ или данных в Ваших устройствах, даже если Администрация будет явно поставлена в известность о возможности такого ущерба.
Просим Вас быть предельно осторожными и внимательными, в использовании материалов раздела. Учитывать не только Ваши пожелания, но и границы возможностей вашего оборудования.
Ответить
Аватара пользователя
Brook
Сообщения: 127
Зарегистрирован: 24 май 2022, 00:29

tumbler писал(а): 21 окт 2022, 21:50 Очень неплохо.
Теперь автору осталось открыть для себя GitHub, чтобы не распространять код как в каменном веке, файликами фиг знает где и будет вообще топчик)
А заодно будет на много проще следить за изменениями.
Да мы с ГитХабом давно знакомы и одно время тесно общались. Только дружбы не сложилось. Было несколько инцидентов, поэтому нет ему веры. Пользуюсь Гитом локально.

На счет апдейтов. В планах было сделать систему автоматического обновления по FTP, и она на половину готова. Будет время - обязательно допилю. В ближайшее время обновлений не будет, поэтому пока не актуально.


Аватара пользователя
Brook
Сообщения: 127
Зарегистрирован: 24 май 2022, 00:29

Sertik писал(а): 20 окт 2022, 11:19
Массив не стоит копировать обычным "присваиванием", типа такого :local array1 $array2, т.к. он передается по ссылке.
Но если после такого копирования стереть массив array2, например, командой :set array2, то по идее Рос не имея права потерять значения массива array1 должна перед уничтожением array2 заполнить array1 значениями ... Надо проверить как работает Рос в этом случае.
Проверял...
Но, если после таких манипуляций обнулить второй массив :set array2 [ ], то его элементы останутся в первом.


makbar
Сообщения: 2
Зарегистрирован: 02 мар 2020, 12:25

Приветствую!
В скрипт не вникал, но я так понимаю он работает полингом,а не вэбхуком? С какой периодичностью он мучает тогда апи телеги, переспрашивая сообщения?


Sertik
Сообщения: 1598
Зарегистрирован: 15 сен 2017, 09:03

Да, не вебхуком. Роутер практически не замечает его, а Телеграмм и подавно.
Частоту "мучений" можно настроить.
Написано круто, всё модульно. Мне очень нравится. Автор дал фактически ядро для дальнейших работ. Низкий ему поклон.


фрагменты скриптов, готовые работы, статьи, полезные приемы, ссылки
viewtopic.php?f=14&t=13947
Аватара пользователя
Brook
Сообщения: 127
Зарегистрирован: 24 май 2022, 00:29

makbar писал(а): 07 ноя 2022, 00:01 Приветствую!
В скрипт не вникал, но я так понимаю он работает полингом,а не вэбхуком? С какой периодичностью он мучает тогда апи телеги, переспрашивая сообщения?
Бот лонгполинг.

В скрипте mainBot есть такая строка:

Код: Выделить всё

:local tgUrl "https://api.telegram.org/$botID/getUpdates\?&allowed_updates=[%22inline_query%22,%22channel_post%22,%22message%22,%22callback_query%22]&offset=$Jtoffset&timeout=15"
Там в конце есть параметр timeout=15 он отвечает за частоту длительного опроса.

Описание из API Телеги
timeout - Тайм-аут в секундах для длительного опроса. Значение по умолчанию равно 0, т.е. обычный короткий опрос. Должен быть положительным, короткий опрос следует использовать только в целях тестирования.

Это НЕ значит, что бот забирает сообщения 1 раз в 15 секунд. Он отправляет длительный опрос раз в 15 сек. и ждет сообщений в течение таймаута этого опроса. Когда сообщения приходят, бот забирает их сразу пачкой. Чем меньше будет интервал, тем меньше будет пачка сообщений. Для высоконагруженных ботов можно играть с этим таймаутом, чтобы за раз забирать меньше или больше сообщений.


Аватара пользователя
Brook
Сообщения: 127
Зарегистрирован: 24 май 2022, 00:29

Sertik писал(а): 07 ноя 2022, 09:24 Да, не вебхуком. Роутер практически не замечает его, а Телеграмм и подавно.
Частоту "мучений" можно настроить.
Написано круто, всё модульно. Мне очень нравится. Автор дал фактически ядро для дальнейших работ. Низкий ему поклон.
Уважаемый Sertik прав, микротик бота совсем не замечает, как нагрузку. Правда с большим количеством пользователей, работающих одновременно, его не тестировали. Но по идее там просто работа с текстом и массивами, она съедает не много ресурсов.

Скоро начнется тестирование нового бота, которого я сейчас пишу. Он тоже будет работать на микротике, но уже как публичный сервис, которым могут пользоваться все желающие. Вот там и посмотрим, как он справляется с большим количеством одновременно работающих пользователей. Хотя нагрузочные тесты показывают, что ему вообще не страшно.


Sertik
Сообщения: 1598
Зарегистрирован: 15 сен 2017, 09:03

Бот будет для определения местоположения вопрошающего ? :-) ... С последующей передачей координат цели ? :ps_ih:


фрагменты скриптов, готовые работы, статьи, полезные приемы, ссылки
viewtopic.php?f=14&t=13947
Аватара пользователя
Brook
Сообщения: 127
Зарегистрирован: 24 май 2022, 00:29

Sertik писал(а): 07 ноя 2022, 16:00 Бот будет для определения местоположения вопрошающего ? :-) ... С последующей передачей координат цели ? :ps_ih:
Почти :a_g_a:


Apollo22
Сообщения: 21
Зарегистрирован: 05 ноя 2022, 21:27

Добрый день,

Интересно добавить что-то свое бот
Например команды на перезагрузку, выполнение скриптов.
Самое главное это переработка меню так как не всем нужен тот набор функций который есть.


Sertik
Сообщения: 1598
Зарегистрирован: 15 сен 2017, 09:03

Используйте пока это viewtopic.php?p=87224#p87224
Для Вас проще будет.

или ещё проще - TelegrammPollingBot отсюда https://habr.com/ru/post/337978/


фрагменты скриптов, готовые работы, статьи, полезные приемы, ссылки
viewtopic.php?f=14&t=13947
Ответить