переменные и функции для скриптов из скрипта

Здесь выкладываем скрипты
Правила форума
Уважаемые Пользователи форума, обратите внимание!
Ни при каких обстоятельствах, Администрация форума, не несёт ответственности за какой-либо, прямой или косвенный, ущерб причиненный в результате использования материалов, взятых на этом Сайте или на любом другом сайте, на который имеется гиперссылка с данного Сайта. Возникновение неисправностей, потерю программ или данных в Ваших устройствах, даже если Администрация будет явно поставлена в известность о возможности такого ущерба.
Просим Вас быть предельно осторожными и внимательными, в использовании материалов раздела. Учитывать не только Ваши пожелания, но и границы возможностей вашего оборудования.
Ответить
-13-
Сообщения: 124
Зарегистрирован: 18 мар 2021, 12:45

Добрый час, всем!

Есть скрипт, который стартует один раз, при старте системы.
 Functions
:global botID "botXXXxxxXXX";
:global myChatID "YYYyyyYYY";
:global syName [/system identity get name];
:global tgSend [:parse [/system script get SendToBot source]];
:global cuDate do={return ([/system clock get date]." - ".[/system clock get time])};
:global cuUptime do={return [/system resource get uptime]};
:global cuIP do={return [/ip dhcp-client get [find comment=fromDHCPaddr] addr]};
:global cuGW do={return [/ip dhcp-client get [find comment=fromDHCPaddr] gateway]};
:global VPNtoOffice1 [/interface l2tp-client get [find comment=VPN_to_Office1] name];
:global cuVPNtoOffice1 do={global VPNtoOffice1 [return ([/interface l2tp-client monitor [find comment=VPN_to_Office1] once as-value]->"status")]};
:global VPNtoOffice2 [/interface l2tp-client get [find comment=VPN_to_Office2] name];
:global cuVPNtoOffice2 do={global VPNtoOffice2 [return ([/interface l2tp-client monitor [find comment=VPN_to_Office2] once as-value]->"status")]};
:global VPNtoOffice3 [/interface l2tp-client get [find comment=VPN_to_Office3] name];
:global cuVPNtoOffice3 do={global VPNtoOffice3 [return ([/interface l2tp-client monitor [find comment=VPN_to_Office3] once as-value]->"status")]};

Вопрос:
Как сделать чтоб скрипты брали переменные и функции из текста скрипта, чтоб не объявлять их глобальными?
По аналогии вот этой функции:
 
:global tgSend [:parse [/system script get SendToBot source]];

Один из скриптов который оперирует глобальными переменными и функциями
 VPNtoOffice2
:global syName;
:global tgSend;
:global cuDate;
:global VPNtoOffice2

/interface l2tp-client set $VPNtoOffice2 disable=no

:local Text "\"$syName\":%0A$[$cuDate]%0AVPN: wait log message"

$tgSend Text=$Text;


Ответить