Страница 2 из 2
Re: Помощь со скриптами
Добавлено: 23 июн 2020, 15:57
Sertik
# тут вставите отправку сообщения в Вашу телегу
/tool fetch url="
https://api.telegram.org/botxxxxxxxxx/s ... xxxx&text=[:tostr $listaddress]"
Вот сюда. Так может не сработать, тогда делаем так:
:local smstext [:tostr $listaddress]
/tool fetch url="
https://api.telegram.org/botxxxxxxxxx/s ... t=$smstext"
Re: Помощь со скриптами
Добавлено: 25 июн 2020, 16:15
keyrus
Работает, но как добавить текстовый комментарий к выводимому тексту, так что бы он не отправлялся каждый раз когда запускается скрипт, а только вместе с адресами.
Будет ли работать if в таком скрипте?
Re: Помощь со скриптами
Добавлено: 26 июн 2020, 12:29
Sertik
:if конечно работать будет.
Перед отправкой надо проверить были ли добавлены в адрес-лист новые адреса ...
В Вашем случае пишем так:
:if ([:len $listaddress]>0) do={ :local smstext [:tostr $listaddress]; /tool fetch url="
https://api.telegram.org/botxxxxxxxxx/s ... t=("Добавлены новые адреса: "."$smstext")
}
Тогда отправка будет "с комментарием" и работать только когда новый адрес добавлен.
Ну всё, разжевал, кажется, осталось только проглотить

Re: Помощь со скриптами
Добавлено: 30 июн 2020, 15:13
keyrus
Sertik писал(а): ↑26 июн 2020, 12:29
:if конечно работать будет.
Перед отправкой надо проверить были ли добавлены в адрес-лист новые адреса ...
В Вашем случае пишем так:
:if ([:len $listaddress]>0) do={ :local smstext [:tostr $listaddress]; /tool fetch url="
https://api.telegram.org/botxxxxxxxxx/s ... t=("Добавлены новые адреса: "."$smstext")
}
Тогда отправка будет "с комментарием" и работать только когда новый адрес добавлен.
Ну всё, разжевал, кажется, осталось только проглотить
Собственно я пытался делать через if но у меня не получилось, и это тоже не отрабатывает
После вставки if перестало работать, как и у меня когда я пытался дописать сам, по этому и задал вопрос про оператор if.
Я так же сравнивал len $listaddress и ничего не происходило, даже комментарий не дописывается.
Re: Помощь со скриптами
Добавлено: 30 июн 2020, 17:43
Sertik
Покажите Ваш скрипт целиком. Я не гадалка, не могу знать где ошибка у Вас.
Re: Помощь со скриптами
Добавлено: 01 июл 2020, 09:30
keyrus
Sertik писал(а): ↑30 июн 2020, 17:43
Покажите Ваш скрипт целиком. Я не гадалка, не могу знать где ошибка у Вас.
Код: Выделить всё
:local listaddress [:toarray ""]
:local myaddresslist "test"
:local mycomment "old"
:foreach i in=[/ip firewall address-list find where list=$myaddresslist] do={:if ([:len [/ip firewall address-list get $i comment]]=0) do={
:set listaddress [:put ($listaddress, [/ip firewall address-list get $i address])]
/ip firewall address-list set $i comment=$mycomment}};
:log info $listaddress
:log info [:len $listaddress]
:if ([:len $listaddress]>0) do={ :local smstext [:tostr $listaddress];
/tool fetch url="https://api.telegram.org/bot11111111:aaaaaaaaaaaaaaaaaaa/sendMessage\?chat_id=-111111111111&text=("add new addres: "."$smstext")" }
Re: Помощь со скриптами
Добавлено: 01 июл 2020, 13:07
Virtue
keyrus писал(а): ↑01 июл 2020, 09:30
скрипт
позволю себе вмешаться в диалог, поигрался с синтаксисом, попробуйте так:
Код: Выделить всё
:local listaddress [:toarray ""]
:local myaddresslist "test"
:local mycomment "old"
:foreach i in=[/ip firewall address-list find where list=$myaddresslist] do={:if ([:len [/ip firewall address-list get $i comment]]=0) do={
:set listaddress [:put ($listaddress, [/ip firewall address-list get $i address])]
/ip firewall address-list set $i comment=$mycomment}};
:log info $listaddress
:log info [:len $listaddress]
:if ([:len $listaddress]>0) do={ :local smstext [:tostr $listaddress];
/tool fetch url="https://api.telegram.org/bot11111111:aaaaaaaaaaaaaaaaaaa/sendMessage\?chat_id=-111111111111&text= add new addres: $smstext" }
Re: Помощь со скриптами
Добавлено: 01 июл 2020, 13:27
keyrus
Virtue писал(а): ↑01 июл 2020, 13:07
keyrus писал(а): ↑01 июл 2020, 09:30
скрипт
позволю себе вмешаться в диалог, поигрался с синтаксисом, попробуйте так:
Код: Выделить всё
:local listaddress [:toarray ""]
:local myaddresslist "test"
:local mycomment "old"
:foreach i in=[/ip firewall address-list find where list=$myaddresslist] do={:if ([:len [/ip firewall address-list get $i comment]]=0) do={
:set listaddress [:put ($listaddress, [/ip firewall address-list get $i address])]
/ip firewall address-list set $i comment=$mycomment}};
:log info $listaddress
:log info [:len $listaddress]
:if ([:len $listaddress]>0) do={ :local smstext [:tostr $listaddress];
/tool fetch url="https://api.telegram.org/bot11111111:aaaaaaaaaaaaaaaaaaa/sendMessage\?chat_id=-111111111111&text= add new addres: $smstext" }
Так работает, спасибо
Re: Помощь со скриптами
Добавлено: 01 июл 2020, 13:28
keyrus
Sertik писал(а): ↑30 июн 2020, 17:43
Покажите Ваш скрипт целиком. Я не гадалка, не могу знать где ошибка у Вас.
Совестными усилиями доковыряли, спасибо

Re: Помощь со скриптами
Добавлено: 01 июл 2020, 21:56
Sertik
Ну слава богу ! Я опоздал, но товарищи выручили ...