# тут вставите отправку сообщения в Вашу телегу
/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"
Помощь со скриптами
Правила форума
Уважаемые Пользователи форума, обратите внимание!
Ни при каких обстоятельствах, Администрация форума, не несёт ответственности за какой-либо, прямой или косвенный, ущерб причиненный в результате использования материалов, взятых на этом Сайте или на любом другом сайте, на который имеется гиперссылка с данного Сайта. Возникновение неисправностей, потерю программ или данных в Ваших устройствах, даже если Администрация будет явно поставлена в известность о возможности такого ущерба.
Просим Вас быть предельно осторожными и внимательными, в использовании материалов раздела. Учитывать не только Ваши пожелания, но и границы возможностей вашего оборудования.
Уважаемые Пользователи форума, обратите внимание!
Ни при каких обстоятельствах, Администрация форума, не несёт ответственности за какой-либо, прямой или косвенный, ущерб причиненный в результате использования материалов, взятых на этом Сайте или на любом другом сайте, на который имеется гиперссылка с данного Сайта. Возникновение неисправностей, потерю программ или данных в Ваших устройствах, даже если Администрация будет явно поставлена в известность о возможности такого ущерба.
Просим Вас быть предельно осторожными и внимательными, в использовании материалов раздела. Учитывать не только Ваши пожелания, но и границы возможностей вашего оборудования.
-
- Сообщения: 1657
- Зарегистрирован: 15 сен 2017, 09:03
-
- Сообщения: 28
- Зарегистрирован: 22 июн 2020, 10:34
- Откуда: Харьков
Работает, но как добавить текстовый комментарий к выводимому тексту, так что бы он не отправлялся каждый раз когда запускается скрипт, а только вместе с адресами.Sertik писал(а): ↑23 июн 2020, 15:57
:local smstext [:tostr $listaddress]
/tool fetch url="https://api.telegram.org/botxxxxxxxxx/s ... t=$smstext"
Будет ли работать if в таком скрипте?
-
- Сообщения: 1657
- Зарегистрирован: 15 сен 2017, 09:03
:if конечно работать будет.
Перед отправкой надо проверить были ли добавлены в адрес-лист новые адреса ...
В Вашем случае пишем так:
:if ([:len $listaddress]>0) do={ :local smstext [:tostr $listaddress]; /tool fetch url="https://api.telegram.org/botxxxxxxxxx/s ... t=("Добавлены новые адреса: "."$smstext")
}
Тогда отправка будет "с комментарием" и работать только когда новый адрес добавлен.
Ну всё, разжевал, кажется, осталось только проглотить
Перед отправкой надо проверить были ли добавлены в адрес-лист новые адреса ...
В Вашем случае пишем так:
:if ([:len $listaddress]>0) do={ :local smstext [:tostr $listaddress]; /tool fetch url="https://api.telegram.org/botxxxxxxxxx/s ... t=("Добавлены новые адреса: "."$smstext")
}
Тогда отправка будет "с комментарием" и работать только когда новый адрес добавлен.
Ну всё, разжевал, кажется, осталось только проглотить

фрагменты скриптов, готовые работы, статьи, полезные приемы, ссылки
viewtopic.php?f=14&t=13947
viewtopic.php?f=14&t=13947
-
- Сообщения: 28
- Зарегистрирован: 22 июн 2020, 10:34
- Откуда: Харьков
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 и ничего не происходило, даже комментарий не дописывается.
-
- Сообщения: 1657
- Зарегистрирован: 15 сен 2017, 09:03
Покажите Ваш скрипт целиком. Я не гадалка, не могу знать где ошибка у Вас.
фрагменты скриптов, готовые работы, статьи, полезные приемы, ссылки
viewtopic.php?f=14&t=13947
viewtopic.php?f=14&t=13947
-
- Сообщения: 28
- Зарегистрирован: 22 июн 2020, 10:34
- Откуда: Харьков
Код: Выделить всё
: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")" }
- Virtue
- Сообщения: 148
- Зарегистрирован: 07 мар 2014, 10:17
позволю себе вмешаться в диалог, поигрался с синтаксисом, попробуйте так:
Код: Выделить всё
: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" }
-
- Сообщения: 28
- Зарегистрирован: 22 июн 2020, 10:34
- Откуда: Харьков
Так работает, спасибоVirtue писал(а): ↑01 июл 2020, 13:07позволю себе вмешаться в диалог, поигрался с синтаксисом, попробуйте так:
Код: Выделить всё
: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" }
-
- Сообщения: 28
- Зарегистрирован: 22 июн 2020, 10:34
- Откуда: Харьков
-
- Сообщения: 1657
- Зарегистрирован: 15 сен 2017, 09:03
Ну слава богу ! Я опоздал, но товарищи выручили ...
фрагменты скриптов, готовые работы, статьи, полезные приемы, ссылки
viewtopic.php?f=14&t=13947
viewtopic.php?f=14&t=13947