Re: Нужна помощь!
Добавлено: 29 июл 2020, 13:23
Если включить логирование на всё что можно, то и скрипты не нужны будут ...
Ради такой малой задачи гонять такой скрипт ... 


Форум поддержи и обмена опытом пользователей оборудования RouterBOARD и операционной системы RouterOS Латвийского производителя MikroTik
https://forummikrotik.ru/
Очень сложно разбирать чужие скрипты и выявлять в них проблемы.. Гораздо проще сделать как я говорил, скрипт взять из темы "оповещение телеграм" тот который обновленный, вконце темы я выложил, он будет слать в телегу ошибки и варнинги из лога, и написать простой скрипт типа: если в адрес листе что-то есть, пишем это в лог варнинг.. всё..
Код: Выделить всё
:local listaddress [:toarray ""]
:local myaddresslist "my adresslist name"
:local mtIdentity [/system identity get name];
:local botID "botXXXXXXXXX:XXXXXXXXXXXXXXXXXXXXXXXXX" ;
:local myChatID "YYYYYY" ;
:foreach i in=[/ip firewall address-list find where list=$myaddresslist] do={:set listaddress ($listaddress, [/ip firewall address-list get $i address]);}
:local la ("$mtIdentity "."send "."$myaddresslist "."ip adresses: "."$[:tostr $listaddress]")
:tool fetch url=("https://api.telegram.org/$botID/sendmessage\?chat_id=$myChatID&text=$la") keep-result=no;
Спасибо. Вчера дошел до такого варианта.Sertik писал(а): ↑29 июл 2020, 21:56 Ладно уж. Вот Вам по доброте душевной. Всё проверено и работает и не нужно огороды городить.
Всё соответственно "Вашему ТЗ" - пересылает все! записи из адрес листа $myaddresslist в Телегу
Разумеется можно пересылать только новые записи - две строки добавить в скрипт, но это уже сами, сами или - в раздел платные услуги![]()
Код: Выделить всё
:local listaddress [:toarray ""] :local myaddresslist "my adresslist name" :local mtIdentity [/system identity get name]; :local botID "botXXXXXXXXX:XXXXXXXXXXXXXXXXXXXXXXXXX" ; :local myChatID "YYYYYY" ; :foreach i in=[/ip firewall address-list find where list=$myaddresslist] do={:set listaddress ($listaddress, [/ip firewall address-list get $i address]);} :local la ("$mtIdentity "."send "."$myaddresslist "."ip adresses: "."$[:tostr $listaddress]") :tool fetch url=("https://api.telegram.org/$botID/sendmessage\?chat_id=$myChatID&text=$la") keep-result=no;
Код: Выделить всё
:foreach counter in= [/ip firewall address-list find list=ХХХХХХ] do={
:local ip [/ip firewall address-list get $counter address];
tool fetch url="https://api.telegram.org/botХХХХХХХХХХХХХХХ/sendMessage?chat_id=ХХХХХХХХХХХ&text=$ip+ХХХХХ" dst-path=telegram.txt};
Код: Выделить всё
:foreach counter in= [/ip firewall address-list find list=ХХХХХХ] do={
:local ip [/ip firewall address-list get $counter address];
tool fetch url="https://api.telegram.org/botХХХХХХХХХХХХХХХ/sendMessage?chat_id=ХХХХХХХХХХХ&text=$ip+ХХХХХ" dst-path=telegram.txt};