From 1b2c85da113d25035f1d3e877b6d27a4ce737c82 Mon Sep 17 00:00:00 2001 From: vados-dev Date: Tue, 28 Apr 2026 03:00:04 +0300 Subject: [PATCH] Backup for MikroNUC created successfully at Apr 28 03:00:04. --- .../20260428/20260428030001-Binary.backup | Bin 0 -> 318318 bytes MikroNUC/20260428/20260428030001-Config.rsc | 2998 +++++++++++++++++ .../20260428/20260428030001-Diff-Config.rsc | 386 +++ 3 files changed, 3384 insertions(+) create mode 100644 MikroNUC/20260428/20260428030001-Binary.backup create mode 100644 MikroNUC/20260428/20260428030001-Config.rsc create mode 100644 MikroNUC/history/20260428/20260428030001-Diff-Config.rsc diff --git a/MikroNUC/20260428/20260428030001-Binary.backup b/MikroNUC/20260428/20260428030001-Binary.backup new file mode 100644 index 0000000000000000000000000000000000000000..a64ecaf953cbaad2c8a28dfd5c85ff81ed409dba GIT binary patch literal 318318 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 z%0D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

!Cl%f$R3Qr`^E-^2vU7<(-_!(H}dP@)6t$8Lb9 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

J2YQw$ah-5t6KeSaDc<*OKJbd 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 bFoBkg;^YizqUL~6lLHS4b0a#5)YaE=#4VF) literal 0 HcmV?d00001 diff --git a/MikroNUC/20260428/20260428030001-Config.rsc b/MikroNUC/20260428/20260428030001-Config.rsc new file mode 100644 index 0000000..eed123d --- /dev/null +++ b/MikroNUC/20260428/20260428030001-Config.rsc @@ -0,0 +1,2998 @@ +# 2026-04-28 03:00:02 by RouterOS 7.22.1 +# system id = NmJcEM+8XAP +# +/caps-man channel +add band=2ghz-g/n extension-channel=disabled frequency=2422 name=2G-3 \ + reselect-interval=20m save-selected=yes +add band=5ghz-a/n/ac extension-channel=XXXX frequency=5660 name=5G-5660 \ + save-selected=yes +add band=5ghz-a/n/ac extension-channel=XXXXXXXX frequency=5160,5200,5280 \ + name=5G-5160-5280 reselect-interval=30m save-selected=yes +add band=5ghz-n/ac extension-channel=XXXX frequency=5180 name=5G-36 \ + reselect-interval=30m save-selected=yes +add band=5ghz-n/ac extension-channel=XXXX frequency=5200 name=5G-40 \ + reselect-interval=30m save-selected=yes +add band=5ghz-n/ac extension-channel=XXXX frequency=5220 name=5G-44 \ + reselect-interval=30m save-selected=yes +add band=5ghz-n/ac extension-channel=XXXX frequency=5240 name=5G-48 \ + reselect-interval=30m save-selected=yes +add band=2ghz-g/n extension-channel=disabled frequency=2442 name=2G-7 \ + reselect-interval=20m save-selected=yes +add band=2ghz-g/n extension-channel=disabled frequency=2462 name=2G-11 \ + reselect-interval=20m save-selected=yes +/interface bridge +add name=Bridge-DOC +add name=Bridge-LAN port-cost-mode=short +/interface ethernet +set [ find default-name=ether1 ] disable-running-check=no name=ether2 +/interface veth +add address=172.18.20.6/30 container-mac-address=00:00:00:00:00:00 dhcp=no \ + gateway=172.18.20.5 gateway6="" name=docker-xray-vless-veth +add address=10.10.10.10/24 container-mac-address=5C:26:FE:05:6F:12 dhcp=no \ + gateway=10.10.10.1 gateway6="" mac-address=5C:26:FE:05:6F:11 name=veth1 +/caps-man datapath +add bridge=Bridge-LAN client-to-client-forwarding=yes local-forwarding=yes \ + name=xs-DataPath +add bridge=Bridge-LAN client-to-client-forwarding=yes local-forwarding=yes \ + name=DataPath +/caps-man security +add authentication-types=wpa2-psk encryption=aes-ccm group-encryption=aes-ccm \ + group-key-update=30m name=xs-Sec +add authentication-types=wpa2-psk encryption=aes-ccm group-encryption=aes-ccm \ + group-key-update=30m name=WPA2 +/caps-man configuration +add channel.band=2ghz-b/g/n country=no_country_set datapath=xs-DataPath mode=\ + ap name=xs-2G rx-chains=0,1,2,3 security=xs-Sec ssid=vados tx-chains=\ + 0,1,2,3 +add channel.band=5ghz-a/n/ac country=no_country_set datapath=xs-DataPath \ + installation=any mode=ap name=xs-5G rx-chains=0,1,2,3 security=xs-Sec \ + ssid=vados5g tx-chains=0,1,2,3 +add channel.band=2ghz-b/g/n .control-channel-width=20mhz .extension-channel=\ + XX .frequency=2422,2442,2462 .reselect-interval=20m country=belarus \ + datapath=DataPath datapath.client-to-client-forwarding=yes \ + .local-forwarding=yes hw-protection-mode=rts-cts installation=any name=2G \ + rx-chains=0,1,2,3 security=WPA2 ssid=vados tx-chains=0,1,2,3 +add channel.band=5ghz-a/n/ac .control-channel-width=20mhz .extension-channel=\ + XXXX .frequency=5180,5200,5220,5240,5260 .reselect-interval=20m \ + .skip-dfs-channels=yes country=belarus datapath=DataPath \ + datapath.client-to-client-forwarding=yes .local-forwarding=yes \ + hw-protection-mode=rts-cts installation=any name=5G security=WPA2 ssid=\ + vados5g +/disk +add slot=tmpfs tmpfs-max-size=715827882 type=tmpfs +/interface list +add include=dynamic,static name=LAN +/interface wireless security-profiles +set [ find default=yes ] supplicant-identity=MikroMIC +/ip dhcp-server option +add code=12 name=HostName +add code=119 force=yes name=domain-search-list value="0x03'WORKGROUP'0x00" +/ip dhcp-server option sets +add name=P1505n options=HostName +add name=StartLife1 options=HostName +add name=amsterDev options=HostName +add name=MiTV options=HostName +add name=miller options=HostName +add name=amster options=HostName +add name=garage options=HostName +add name=domain-search-set options=domain-search-list +/ip pool +add name=dhcp ranges=10.30.30.150-10.30.30.200 +/system logging action +add email-start-tls=yes email-to=vados@vados.ru name=email target=email +/system script +add dont-require-permissions=no name=test owner=vados policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source="#\ + \r\ + \n#:local ScriptName [ :jobname ];\r\ + \n:local expSrc;\r\ + \n:local FileName;\r\ + \n:local FilePath;\r\ + \n:local DirPath \"tmpfs/\";\r\ + \n:global WaitForFile;\r\ + \n:global IfThenElse;\r\ + \n\r\ + \n:foreach Script in=([ /system/script find where name~\"Amster-GlobalConf\ + *\" ]) do={\r\ + \n:local ScriptVal [ /system/script/get \$Script ];\r\ + \n\r\ + \n:local expName [ (\$ScriptVal->\"name\") ];\r\ + \n#[/system/script get \$expScript name];\r\ + \n:delay 2s;\r\ + \n\r\ + \n:set expSrc [/system/script print where name=\$expName];\r\ + \n/system/script print where name=\$expName;\r\ + \n#[:put [/system/script get \$expScript source]];\r\ + \n:put [\$expSrc];\r\ + \n:delay 2s;\r\ + \n:set FileName \$expName;\r\ + \n:set FilePath (\$DirPath . \$FileName);\r\ + \n\r\ + \n#:log warning \"\\n----------------------\\n\\\$expSrc = \$expSrc\\n____\ + ______________________________\";\r\ + \n:log info \"\\n\\\$FileName = '\$FileName'\";\r\ + \n:log info \"\\n\\\$FilePath = \$FilePath\";\r\ + \n#:log warning {/system/script/get source=[/system/script/get \$expScript\ + \_source];};\r\ + \n\r\ + \n#\$[/system script get [/system script find name=\"\$FileName\"] source]\ + \r\ + \n\r\ + \n#:local gettingScript \"\$FileName\";\r\ + \n#:execute script=\"[[:parse \\\"[:parse { :put (\"\$[/system script get \ + [/system script find name=\$FileName] source]\"); } \\\"]]\"; \\\r\ + \n\r\ + \n#:execute script={:put \"[:parse \\\"[:parse [/system/script get [/syste\ + m/script find name=\$gettingScript] source];\\\"]]\";} \\\r\ + \n# file=(\$FilePath . \".rsc\\00\");\r\ + \n:do {\r\ + \n:local fName (\$FilePath . \".rsc\");\r\ + \n#:delay 3s;\r\ + \n#/file add name=\$fName;\r\ + \n:put [:tostr [\$expSrc]];\r\ + \n/file set \$fName contents=[:put [\$expSrc]];\r\ + \n:delay 3s;\r\ + \n\$WaitForFile \$fName;\r\ + \n(\$FilePath . \".rsc\");\r\ + \n#:delay 2s;\r\ + \n\r\ + \n} on-error={\r\ + \n:log error \"\\nERROR \\\$FilePath = \$FilePath\";\r\ + \n}\r\ + \n#\$WaitForFile (\$FilePath . \".rsc\");\r\ + \n#:execute script={ :put [/system/script get [:put \$FileName] source]; }\ + ;\r\ + \n#/system/script export \$Sscript file=\$FilePath;\r\ + \n#/system/script/export [:put [/system/script/get \$expScript source]] fi\ + le=\$FilePath;\r\ + \n#:execute script={ :put [/system/script/get \$expScript source]; } \\\r\ + \n\r\ + \n#:log warning \"\\n\\\$expScript = \$expScript\";\r\ + \n# \\\r\ + \n# file=(\$FilePath . \".rsc\\00\");\r\ + \n#script={:put [/system/script/get \$FileName source];} file=(\$FilePath\ + \_. \".rsc\\00\");\r\ + \n#/system script export \$src file=(\$FilePath . \$FileName);\r\ + \n}\r\ + \n\r\ + \n:log warning \"\\nComplete!\";\r\ + \n\r\ + \n # :execute script={ :put [ /system/script/get Amster-GlobalConfig sou\ + rce ]; } \\\r\ + \n # file=(\$FilePath . \".conf\\00\");\r\ + \n # \$WaitForFile (\$FilePath . \".conf\");\r\ + \n # :onerror Err {\r\ + \n # /tool/fetch upload=yes url=(\$BackupUploadUrl . \"/\" . \$FileName\ + \_. \".conf\") \\\r\ + \n # user=\$BackupUploadUser password=\$BackupUploadPass src-path=(\ + \$FilePath . \".conf\");\r\ + \n # :set ConfigFile [ /file/get (\$FilePath . \".conf\") ];\r\ + \n # :set (\$ConfigFile->\"name\") (\$FileName . \".conf\");\r\ + \n " +add dont-require-permissions=no name=test1 owner=vados policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source="\ + \r\ + \n#:local runningVer [:find [/system/resource/get version] \"(\"];\r\ + \n\r\ + \n:local runningChannel;\r\ + \n:local runningVersion;\r\ + \n:local ParseCustom;\r\ + \n\r\ + \n:set ParseCustom do={\r\ + \n :local Str [ :tostr \$1 ];\r\ + \n :local Start [:find [ \$Str ] [:tostr \$2]];\r\ + \n :local End [ :tostr \$3 ];\r\ + \n :local Num [ :tonum \$4 ];\r\ + \n :local Return;\r\ + \n\r\ + \n :if ([:len \$Num] = 0) do={:set Num \"0\"}\r\ + \n :local rest [:pick \$Str (\$Start+\$Num) [:len \$Str]]; \r\ + \n :if ([:len \$End ] = 0) do={:set Return [:pick \$Str \$Num \$Start]} e\ + lse={\r\ + \n :set End [:find \$rest \$End];\r\ + \n :set Return [:pick \$rest 0 \$End];\r\ + \n }\r\ + \n:return \$Return;\r\ + \n}\r\ + \n \r\ + \n:global runningChannel [\$ParseCustom [/system/resource/get version] \"(\ + \" \")\" 1];\r\ + \n:log warning [\$runningChannel];\r\ + \n:set runningVersion [\$ParseCustom [/system/resource/get version] \" \" \ + \")\" 2];\r\ + \n:log warning [\$runningVersion];\r\ + \n\r\ + \n\r\ + \n\r\ + \n# :if ([:len \$open] = 0) do={\r\ + \n# :log error \"\$SMP Could not extract installed OS channel from vers\ + ion string: `\$runningOsAndChannel`.\";\r\ + \n# :error \"\$SMP error, check logs\";\r\ + \n# }\r\ + \n# :local rest [:pick \$runningOsAndChannel (\$open+1) [:len \$runningOs\ + AndChannel]];\r\ + \n# :local close [:find \$rest \")\"];\r\ + \n# :local channel [:pick \$rest 0 \$close];\r\ + \n# :return \$channel;\r\ + \n#}" +add dont-require-permissions=no name=01-Amster-Init-Script owner=vados \ + policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + source="# Amster Initial Script\r\ + \n#\r\ + \n#:global GlobalEnvRemove true; /system/script {run Amster-GlobalEnvRemov\ + e; };\r\ + \n#:delay 1s;\r\ + \n:#global ReloadGlobal true; \r\ + \n\r\ + \n:global AmScriptsUrl \"https://ros.vados.ru/\";\r\ + \n:global defOwner \"vados\";\r\ + \n:global AmFirstRun;\r\ + \n\r\ + \n:set AmFirstRun do={\r\ + \n :global AmScriptsUrl;\r\ + \n :global defOwner;\r\ + \n #:global ParseKeyValueStore;\r\ + \n #:local AmUpdCRLF true;\r\ + \n #:local IfThenElse;\r\ + \n #:set IfThenElse do={:if ([ :tostr \$1 ] = \"true\" || [ :tobool \$1\ + \_] = true) do={:return \$2}; :return \$3}\r\ + \n #/certificate/settings/set builtin-trust-store=fetch;\r\ + \n #/tool/fetch \"\$scriptsUrl/certs/Root-YE.pem\" dst-path=\"root-ye.p\ + em\";\r\ + \n #/certificate/import file-name=\"root-ye.pem\" passphrase=\"\";\r\ + \n # For basic verification we rename the certificate and print it by f\ + ingerprint. Make sure exactly this one certificate (\"Root-YE\") is shown.\ + \r\ + \n #/certificate/set name=\"Root-YE\" [ find where common-name=\"Root Y\ + E\" ];\r\ + \n #/certificate/print proplist=name,fingerprint where fingerprint=\"e1\ + 4ffcad5b0025731006caa43a121a22d8e9700f4fb9cf852f02a708aa5d5666\";\r\ + \n #:log info \"\\nAmScriptsUrl = \$AmScriptsUrl\";\r\ + \n :local Scripts {\r\ + \n \"Amster-GlobalConfig\"\r\ + \n \"Amster-GlobalFunc\";\r\ + \n# \"Amster-SFTP-backup\"\r\ + \n# \"Amster-BkpEmail-and-upd\";\r\ + \n };\r\ + \n# /system/script/set owner=(\$ScriptVal->\"name\") \\\r\ + \n# source=[ \$IfThenElse (\$ScriptUpdatesCRLF = true) \$SourceCRLF \$S\ + ourceNew ] \$Script;\r\ + \n :foreach Script in=\$Scripts do={\r\ + \n :put \"Installing \$Script...\";\r\ + \n /system/script/remove [ find where name=\$Script ];\r\ + \n /system/script/add name=\$Script owner=\$defOwner source=([ /too\ + l/fetch (\"\$AmScriptsUrl\" . \$Script . \".rsc\") output=user as-value ]-\ + >\"data\");\r\ + \n /system/script/set source=[ :tocrlf [ get \$Script source ] ] \$\ + Script;\r\ + \n };\r\ + \n /system/script { run Amster-GlobalConfig; run Amster-GlobalFunc; }\r\ + \n}\r\ + \n:global AmUpdRun;\r\ + \n:set AmUpdRun do={\r\ + \n #:local UpdScript [ :tostr \$1 ];\r\ + \n #:global ParseKeyValueStore;\r\ + \n :global AmScriptsUrl;\r\ + \n :global defOwner;\r\ + \n :local Scripts {\r\ + \n# \"Amster-GlobalConfig\"\r\ + \n# \"Amster-GlobalFunc\"\r\ + \n# \"Amster-GlobalRemove\"\r\ + \n \"Amster-backup-SFTP\"\r\ + \n \"Amster-SFTP-backup\"\r\ + \n \"Amster-BkpEmail-and-upd\"\r\ + \n \"Amster-TG-Bot\"\r\ + \n \"Amster-TG-Notification\";\r\ + \n };\r\ + \n :foreach Script in=\$Scripts do={\r\ + \n :put \"updating \$Script...\";\r\ + \n /system/script/remove [ find where name=\$Script ];\r\ + \n /system/script/add name=\$Script owner=\$defOwner source=([ /too\ + l/fetch (\"\$AmScriptsUrl\" . \$Script . \".rsc\") output=user as-value ]-\ + >\"data\");\r\ + \n /system/script/set source=[ :tocrlf [ get \$Script source ] ] \$\ + Script;\r\ + \n };\r\ + \n# /system/script/add name=\$Script owner=\$AmOwner source=([ /tool/fe\ + tch check-certificate=yes-without-crl (\"\$AmScriptsUrl\" . \$Script . \".\ + rsc\") output=user as-value ]->\"data\"); };\r\ + \n}\r\ + \n\r\ + \n\$AmFirstRun;\r\ + \n#\$AmUpdRun;\r\ + \n\r\ + \n#\$setUpdExist;\r\ + \n#:global setUpdExist;\r\ + \n#:global ParseKeyValueStore;\r\ + \n#:set setUpdExist do={\r\ + \n#:do {\r\ + \n#:global ParseKeyValueStore;\r\ + \n# :foreach Script in=[ /system/script/find where source~\"^#!rsc by Vad\ + os\\r\?\\n#comment=*\" ] do={\r\ + \n# :local ScriptVal [ /system/script/get \$Script ];\r\ + \n# :local ScriptInfo [ \$ParseKeyValueStore (\$ScriptVal->\"#comment\"\ + ) ];\r\ + \n# :local scriptName (\$ScriptVal->\"name\");\r\ + \n#:log warning (\"\\n\\\$scriptName = \". \$scriptName);\r\ + \n#: log warning (\"\\n\\\$ScriptInfo = \". \$ScriptInfo);\r\ + \n# }\r\ + \n#} on-error={}\r\ + \n#}\r\ + \n#\$name;\$owner;\$policy;\$dont-require-permissions;\$last-started;\$run\ + -count;\$source;\$invalid;\$comment;\$.id;\$.nextid;\$.dead;\$.about;\r\ + \n#;(evl / (evl /docommand=;(evl / (evl /foreachcounter=\$Script;do=;(evl \ + / (evl /localname=\$ScriptVal;value=(evl (evl /system/script/getnumber=\$S\ + cript))) (evl /localname=\$ScriptInfo;value=(evl (<%% \$ParseKeyValueStore\ + \_(> \$ParseKeyValueStore);(-> \$ScriptVal comment)))) (evl /localname=\$s\ + criptName) (evl /setname=\$scriptName;value=(-> #\$ScriptVal name)) (evl /\ + log/errormessage=(. \r\ + \n# \$ ScriptInfo = \$ScriptInfo)));in=(evl (evl /system/script/findwhere\ + =\$name;\$owner;\$policy;\$dont-require-permissions;\$last-started;\$run-c\ + ount;\$source;\$invalid;\$comment;\$.id;\$.nextid;\$.dead;\$.about;(~ \$so\ + urce (. ^#!rsc by Vados \r\ + \n# \? \r\ + \n#));5))));on-error=;(evl /)))\r\ + \n" +add dont-require-permissions=no name="Download cAP's Packages" owner=vados \ + policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + source="# +------------------------------+\r\ + \n# | |\r\ + \n# | Mikrotik RouterOS Scripts |\r\ + \n# | _Download cAP's Packages_ |\r\ + \n# | |\r\ + \n# +------------------------------+\r\ + \n# https://github.com/sebastian13/mikrotik-routeros-scripts\r\ + \n#\r\ + \n\r\ + \n# Set a directory path providing the required space\r\ + \n# Add a microSD card https://wiki.mikrotik.com/wiki/Manual:System/Disks\ + \r\ + \n# or setup a RAM-Disk via '/disk/add type=tmpfs tmpfs-max-size=20M slot=\ + ram'\r\ + \n:local dir \"/tmpfs/capsman-packages\";\r\ + \n\r\ + \n\r\ + \n# Set Package Path if required, set policy to none if using 'upgrade-cap\ + s' script\r\ + \n/interface/wifi/capsman/set package-path=\$dir upgrade-policy=none;\r\ + \n/caps-man/manager/set package-path=\$dir upgrade-policy=none;\r\ + \n#require-same-version;\r\ + \n\r\ + \n:local installed [/system package get value-name=version [find where nam\ + e=\"routeros\"]]\r\ + \n\r\ + \n# Delete old downloads\r\ + \n# /file/remove [ find type=package name~\"capsman*\" ]\r\ + \n\r\ + \n# Starting from RouterOS version 7.13, drivers for older wireless and 60\ + GHz interfaces are\r\ + \n# part of the separate \"wireless\" package. The existing \"wifiwave2\" \ + package has been divided\r\ + \n# into distinct packages: \"wifi-qcom\" and \"wifi-qcom-ac\".\r\ + \n# RouterOS >=7.12 is required to upgrade to 7.13.\r\ + \n# https://forum.mikrotik.com/viewtopic.php\?t=202423\r\ + \n\r\ + \n:foreach architecture in={ \"arm\";\r\ + \n# \"arm64\";\r\ + \n \"x86_64\";\r\ + \n \"mipsbe\"} do={\r\ + \n :foreach package in={ \"routeros\";\r\ + \n# \"wifi-qcom-ac\";\r\ + \n# \"wifi-qcom\";\r\ + \n \"wireless\"} do={ :do {\r\ + \n :put \"\"\r\ + \n :put \"Download \$package \$installed for \$architecture\"\r\ + \n /tool fetch mode=https \\\r\ + \n url=\"https://download.mikrotik.com/routeros/\$installed/\$packa\ + ge-\$installed-\$architecture.npk\" \\\r\ + \n dst-path=\"\$dir/\$package-\$installed-\$architecture.npk\"\r\ + \n } on-error={ :put \"Error downloading the file. On a 404, note t\ + hat the package may not exist for the specified architecture!\" }\r\ + \n }\r\ + \n}\r\ + \n" +add comment="Script for setup routeros scrypt system" \ + dont-require-permissions=no name=AM-setup owner=AM-setup policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source="#\ + !rsc by Vados\r\ + \n# RouterOS script: AM-setup\r\ + \n# Script comment: Script for setup routeros scrypt system\r\ + \n# Copyright (c) 2005-2026 Vados \r\ + \n#\r\ + \n#\r\ + \n# requires RouterOS, version=7.19\r\ + \n# requires device-mode, fetch\r\ + \n#\r\ + \n# :local ScriptName [ :jobname ];\r\ + \n# Additional commands:\r\ + \n#\r\ + \n# For scripts:\r\ + \n#:global NewScript \"script_name\"; \r\ + \n#:global GlobalScriptsUrl \"https://ros.vados.ru/\";\r\ + \n#/system/script/add name=\$NewScript owner=\$NewScript source=([/tool/fe\ + tch check-certificate=yes-without-crl (\$GlobalScriptsUrl . \$ScriptAdd . \ + \".rsc\") output=user as-value ]->\"data\");\r\ + \n#:global NewScript (a);\r\ + \n#:global ScriptInstallUpdate; \$ScriptInstallUpdate;\r\ + \n#\r\ + \n# For run from terminal:\r\ + \n#/system/script/add name=AM-setup owner=AM-Setup source=([/tool/fetch ch\ + eck-certificate=yes-without-crl \"https://ros.vados.ru/AM-setup.rsc\" outp\ + ut=user as-value ]->\"data\");\r\ + \n#\r\ + \n\r\ + \n:global ScriptUpdatesCRLF \"LF\";\r\ + \n#:if (\$ScriptUpdatesCRLF != false) do={\r\ + \n# :foreach Script in=[ /system/script/find where source~\"^#!rsc by Vad\ + os\" ] do={\r\ + \n# if (\$ScriptUpdatesCRLF = true) do={\r\ + \n# /system/script/set source=[ :tocrlf [ get \$Script source ] ] \$S\ + cript;\r\ + \n# } else={\r\ + \n# /system/script/set source=[ :tolf [ get \$Script source ] ] \$Scr\ + ipt;\r\ + \n# }\r\ + \n# }\r\ + \n#}\r\ + \n\r\ + \n# /import verbose=no \$ScriptName\r\ + \n:global SetupScript [ :jobname ];\r\ + \n:global RemoveMe;\r\ + \n:global RunOnce;\r\ + \n:global InitSetup true;\r\ + \n:global tmpfs true;\r\ + \n\r\ + \n{\r\ + \n :local RmMe [:tobool \$1];\r\ + \n\r\ + \n :global GlobalScriptsUrl;\r\ + \n :global SetupScript;\r\ + \n :global RemoveMe;\r\ + \n :global InitSetup;\r\ + \n :global tmpfs;\r\ + \n \r\ + \n :local CertCommonName \"Root YE\";\r\ + \n :local CertFileName \"Root-YE.pem\";\r\ + \n :local CertFingerprint \"e14ffcad5b0025731006caa43a121a22d8e9700f4fb9c\ + f852f02a708aa5d5666\";\r\ + \n\r\ + \n :if (\$SetupScript = false) do={\r\ + \n :global SetupScript \"AM-setup\";\r\ + \n }\r\ + \n :if (\$RemoveMe != false) do={\r\ + \n :set RemoveMe true;\r\ + \n }\r\ + \n\r\ + \n :log warning (\"\\n\\\$GlobalScriptsUrl = \" . \$GlobalScriptsUrl);\r\ + \n \r\ + \n :local CertSettings [ /certificate/settings/get ];\r\ + \n :if (!(((\$CertSettings->\"builtin-trust-anchors\") = \"trusted\" || \ + \\\r\ + \n (\$CertSettings->\"builtin-trust-store\") ~ \"fetch\" || \\\r\ + \n (\$CertSettings->\"builtin-trust-store\") = \"all\") && \\\r\ + \n [ :len [ /certificate/builtin/find where common-name=\$CertComm\ + onName ] ] > 0)) do={\r\ + \n :put \"Importing certificate...\";\r\ + \n \r\ + \n /tool/fetch (\$GlobalScriptsUrl . \"certs/\" . \$CertFileName) dst-p\ + ath=\$CertFileName as-value;\r\ + \n :delay 1s;\r\ + \n /certificate/import file-name=\$CertFileName passphrase=\"\";\r\ + \n :if ([ :len [ /certificate/find where fingerprint=\$CertFingerprint \ + ] ] != 1) do={\r\ + \n :error \"Something is wrong with your certificates!\";\r\ + \n };\r\ + \n :delay 1s;\r\ + \n };\r\ + \n\r\ + \n:local MkTmpfs do={\r\ + \n :local TmpFs [ /disk/find where slot=tmpfs type=tmpfs ];\r\ + \n :if ([ :len \$TmpFs ] = 1) do={\r\ + \n :if ([ /disk/get \$TmpFs disabled ] = true) do={\r\ + \n :log info (\"The tmpfs is disabled, enabling.\");\r\ + \n /disk/enable \$TmpFs;\r\ + \n }\r\ + \n :return true;\r\ + \n }\r\ + \n :log info (\"Try to removing directory 'tmpfs'.\");\r\ + \n :do {\r\ + \n :retry {\r\ + \n /file/remove tmpfs;\r\ + \n :return true;\r\ + \n } delay=100ms max=10;\r\ + \n } on-error={ }\r\ + \n# \$RmDir \"tmpfs\";\r\ + \n :onerror Err {\r\ + \n /disk/add slot=tmpfs type=tmpfs tmpfs-max-size=([ /system/resource/g\ + et total-memory ] / 3);\r\ + \n :do {\r\ + \n :retry {\r\ + \n /file/get tmpfs;\r\ + \n :return true;\r\ + \n } delay=222ms max=10;\r\ + \n } on-error={ }\r\ + \n } do={\r\ + \n :log warning (\"Creating disk of type tmpfs failed: \" . \$Err);\r\ + \n :return false;\r\ + \n }\r\ + \n# :return true;\r\ + \n}\r\ + \n:if (\$tmpfs = true) do={\r\ + \n :put \"Tmpfs variable is true. Checking for tmpfs/scripts directory...\ + \";\r\ + \n :if ([/file find name=\"tmpfs/scripts\"] != \"\") do={\r\ + \n :log info (\$0 . \"Directory tmpfs/scripts exsist.\");\r\ + \n :return \$true;\r\ + \n } else={\r\ + \n :log warning (\$0 . \"Directory tmpfs/scripts does't exsist.\");\r\ + \n :if ([ \$MkTmpfs ] = false) do={\r\ + \n :log error (\$0 . \"Directory tmpfs is not created!\");\r\ + \n :return false;\r\ + \n } else={\r\ + \n :onerror Err {\r\ + \n /file/add type=\"directory\" name=/tmpfs/scripts;\r\ + \n :do {\r\ + \n :retry {\r\ + \n /file/get /tmpfs/scripts;\r\ + \n :return true;\r\ + \n } delay=100ms max=10;\r\ + \n } on-error={ }\r\ + \n } do={\r\ + \n :log warning (\$0 . \"Making directory 'scripts' failed: \" . \$\ + Err);\r\ + \n :return false;\r\ + \n }\r\ + \n# :return true;\r\ + \n# [ /file/get \$FileName ]\r\ + \n }\r\ + \n# :log error (\$0 . \"Directory tmpfs/scripts does not exsist. Remove\ + \_global variable tmpfs!\");\r\ + \n# :global tmpfs (a);\r\ + \n# return false;\r\ + \n }\r\ + \n}\r\ + \n :put \"Renaming AM-GlobalConfig, if exists...\";\r\ + \n :local ConfOldName (\"AM-GlobalConfig-\" . [ /system/clock/get date ] \ + . [ /system/clock/get time ] . \".rsc\");\r\ + \n /system/script/set name=\$ConfOldName [ find where name=\"AM-GlobalCon\ + fig\" ];\r\ + \n :foreach Script in={ \"AM-GlobalConfig\"; \"AM-GlobalFunc\" } do={\r\ + \n :put \"Installing \$Script...\";\r\ + \n /system/script/remove [ find where name=\$Script ];\r\ + \n /system/script/add name=\$Script owner=\$Script source=([ /tool/fetc\ + h check-certificate=yes-without-crl url=(\$GlobalScriptsUrl . \$Script . \ + \".rsc\") output=user as-value ]->\"data\");\r\ + \n \r\ + \n /system/script run \$Script;\r\ + \n :delay 2s;\r\ + \n };\r\ + \n\r\ + \n :if ([ :len [ /certificate/find where fingerprint=\$CertFingerprint ] \ + ] > 0) do={\r\ + \n :put \"Renaming certificate by its common-name...\";\r\ + \n :global CertificateNameByCN;\r\ + \n \$CertificateNameByCN \$CertFingerprint;\r\ + \n };\r\ + \n\r\ + \n :if (\$RemoveMe = true) do={\r\ + \n :put \"Add Scheduler for remove this script...\";\r\ + \n :local OnEvent (\":delay 30s;\\n\" . \"/system/script/remove [ find \ + where name=\\\"\$SetupScript\\\" ];\\n\" . \\\r\ + \n \":delay 2s;\\n\" . \"/system/scheduler/remove [ find where name=\\\ + \"_RemoveSetup\\\" ];\\n\" . \\\r\ + \n \":delay 2s;\\n\" . \":global RemoveMe (a);\\n\");\r\ + \n :local Comment \"_RemoveSetup tmp scheduler for remove setup script.\ + \";\r\ + \n /system/scheduler/add name=\"_RemoveSetup\" comment=\$Comment start-\ + time=startup interval=30s on-event=\$OnEvent;\r\ + \n :log warning (\$0 . \"\\nI've done everything, and now I'm tired..\ + . I'm leaving.\\nThere will be an error below, this is normal.\");\r\ + \n }\r\ + \n :delay 1;\r\ + \n :put \"Loading configuration and functions...\";\r\ + \n :do { \r\ + \n :global ScriptInstallUpdate; \$ScriptInstallUpdate;\r\ + \n :put \"Normal removing temporary global environment variables.\";\ + \r\ + \n :global SetupScript (a);\r\ + \n :global InitSetup (a);\r\ + \n :global RemoveMe (a);\r\ + \n } on-error={\r\ + \n :local ErrorMsg \"Loading configuration and functions error!\";\r\ + \n :log error (\$0 . \$ErrorMsg . :error);\r\ + \n :error \$ErrorMsg;\r\ + \n }\r\ + \n}\r\ + \n" +add comment="Global Config Script" dont-require-permissions=no name=\ + AM-GlobalConfig owner=AM-GlobalConfig policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source="#\ + !rsc by Vados\r\ + \n# RouterOS script: AM-GlobalConfig\r\ + \n# Script comment: Global Config Script\r\ + \n# Copyright (c) 2007-2026 Vados \r\ + \n#\r\ + \n#\r\ + \n# Warning: Dont touch this line!\r\ + \n:global GlobalConfReady false;\r\ + \n#\r\ + \n#\r\ + \n# Global Url For Amster scripts to fetch\r\ + \n# most be defined in AM-Init-Script or AM-setup scripts\r\ + \n:global GlobalScriptsUrl \"https://ros.vados.ru/\";\r\ + \n:global ScriptsUrlSuffix \"\";\r\ + \n:global CheckSumsVerify true;\r\ + \n\r\ + \n:global ScriptUpdatesCRLF true;\r\ + \n:global CommentsInScripts true;\r\ + \n\r\ + \n# Debug output:\r\ + \n:global PrintDebug true; #false;\r\ + \n\r\ + \n# Debug output for specific script:\r\ + \n:set (\$PrintDebugOverride->\"AM-GlobalFunc\") true;\r\ + \n\r\ + \n# Debug logs\r\ + \n# Other actions (disk, email, remote or support) can be used as well.\r\ + \n# I do not recommend using echo - use debug output instead (https://rsc.\ + eworm.de/main/DEBUG.html#debug-output).\r\ + \n#/system/logging/add topics=script,debug action=memory;\r\ + \n\r\ + \n:global MikrotikUpgradeUrl \"https://upgrade.mikrotik.com/routeros\";\r\ + \n:global Domain \"WORKGROUP\";\r\ + \n\r\ + \n:global EmailGeneralTo \"vados@vados.ru\";\r\ + \n#:global EmailGeneralCc \"\";\r\ + \n\r\ + \n# \$ScriptInstallUpdate mod/notification-telegram\r\ + \n:global TelegramTokenId \"8390868324:AAG3_d1hfVR2M6pGAgDK6ZvhOe4J97nyopw\ + \";\r\ + \n:global TelegramChatId \"-1003631309063\"; #\"454403445\";\r\ + \n# Use this to send notifications to a specific topic in group.\r\ + \n#:global TelegramThreadId \"30\";\r\ + \n# Using telegram-chat you have to define trusted chat ids (not group ids\ + !)\r\ + \n# or user names. Groups allow to chat with devices simultaneously.\r\ + \n:global TelegramChatIdsTrusted {\r\ + \n \"454403445\"\r\ + \n \"-1003631309063\"\r\ + \n \"-5124482807\"\r\ + \n \"1087968824\";\r\ + \n};\r\ + \n# \"-5294757340\";\r\ + \n\r\ + \n:global TelegramChatGroups \"(all)\";\r\ + \n#:global TelegramChatGroups \"(all|home|office)\";\r\ + \n\r\ + \n:global NotificationFunctions {\r\ + \n \"email\"\r\ + \n \"telegram\";\r\ + \n};\r\ + \n# Toggle this to disable symbols in notifications.\r\ + \n:global NotificationsWithSymbols true;\r\ + \n:global TerminalColorOutput true;\r\ + \n\r\ + \n:global DetectIpAddrDefault \"https://ipv4.mikrotik.ovh/\";\r\ + \n:global DetectIpAddrFallback \"https://api.ipify.org/\";\r\ + \n\r\ + \n## Update channel. Possible values: stable, long-term, testing, developm\ + ent\r\ + \n:global updateChannel \"stable\";\r\ + \n\r\ + \n:global CertRenewUrl (\$GlobalScriptsUrl . \"certs/\");\r\ + \n:global CertRenewTime 2w;\r\ + \n:global CertRenewPass {\r\ + \n \"\";\r\ + \n# \"v3ry-s3cr3t\";\r\ + \n# \"4n0th3r-s3cr3t\";\r\ + \n};\r\ + \n:global CertWarnTime 1w;\r\ + \n:global CertIssuedExportPass {\r\ + \n \"\";\r\ + \n# \"cert1-cn\"=\"v3ry-s3cr3t\";\r\ + \n# \"cert2-cn\"=\"4n0th3r-s3cr3t\";\r\ + \n};\r\ + \n\r\ + \n# Script BackupAndUpdate mode, possible values: backup,\r\ + \n# updateOnce - Update once as \"osnotify\" and back \"osnotify\" mode (i\ + n terminal run :set OSUpdateMode updateOnce; \$OSUpdateMode;). \r\ + \n# osupdate - Update if available and creates backups before/after update\ + \_(ignores `forceBackup`)\r\ + \n# Set `forceBackup` to true to always create backups, even\ + \_without updates\r\ + \n# osnotify - Set `forceBackup` to always create backups on every run\r\ + \n:global DevInfoIncludeIP true;\r\ + \n:global BackupAndUpdateMode \"osnotify\"\r\ + \n\r\ + \n:global forceBackup true;\r\ + \n:global BackupPassword \"Peskar55\";\r\ + \n\r\ + \n# SFTP Backup Variables\r\ + \n:global BackupRandomDelay 0;\r\ + \n:global BackupUploadUrl \"sftp://amster.vados.ru/upload/\";\r\ + \n:global BackupUploadUser \$Identity;\r\ + \n:global BackupUploadPass \"root.mnuc.backuper\";\r\ + \n\r\ + \n:global BackupSendBinary true;\r\ + \n:global BackupSendExport true;\r\ + \n:global BackupSendGlobalConfig true;\r\ + \n:global BackupSendScripts true;\r\ + \n\r\ + \n# Remove local file after uploading if no errors\r\ + \n:global BackupRmLocal true;\r\ + \n\r\ + \n# Local Backups Root Directory \r\ + \n:global BackupLocalRoot \"tmpfs\";\r\ + \n\r\ + \n# Encrypt Backup\r\ + \n:global BackupEncrypt true;\r\ + \n\r\ + \n# Sensitive information in Backups\r\ + \n:global BackupSens true;\r\ + \n\r\ + \n# User Export\r\ + \n:global BackupUser true;\r\ + \n\r\ + \n# License Export (not for CHR, will silently skip)\r\ + \n:global BackupLicense false;\r\ + \n\r\ + \n# SSH Keys\r\ + \n:global BackupSshKeys true;\r\ + \n\r\ + \n# Certificate Export\r\ + \n:global BackupCerts true;\r\ + \n\r\ + \n# Certificate Password\r\ + \n:global BackupCertsPasswd \"\";\r\ + \n\r\ + \n# User-Manager Export\r\ + \n:global BackupUserMan false;\r\ + \n\r\ + \n# The Dude Export\r\ + \n:global BackupDude false;\r\ + \n\r\ + \n# User Files to export, comma-separated string or array of strings\r\ + \n# User Files are not removed on backup\r\ + \n# Any directory paths will be removed (/ -> _) on remote file\r\ + \n# Nonpresent files are silently skipped\r\ + \n:global BackupUserList \"autosupout.rif,autosupout.old.rif\";\r\ + \n\r\ + \n# load functions and any custom scripts\r\ + \n# [ /system/script/find where name=\"global-config-ov\ + erlay\" ], \\\r\ + \n# [ /system/script/find where name~\"^global-config-o\ + verlay\\\\.d/.\" ]\r\ + \n#\r\ + \n#:foreach Script in=([ /system/script/find where name=\"Amster-TGglobalV\ + ars\" ], [ /system/script/find where name=\"Amster-TGglobalFunc\" ]) do={\ + \r\ + \n# :onerror Err {\r\ + \n# /system/script/run \$Script;\r\ + \n# } do={\r\ + \n# :log error (\"Loading configuration from configs and functions\"\ + \_. [ /system/script/get \$Script name ] . \" failed: \" . \$Err);\r\ + \n# }\r\ + \n#}\r\ + \n#:log info \"\\ndevMode = \$devMode\";\r\ + \n#:log info \"\\ndevRunning = \$devRunning\";\r\ + \n:foreach Script in=[ /system/script/find where source~\"^#!rsc by Vados \ + GlobalRUN\\r\?\\n\" ] do={\r\ + \n :onerror Err {\r\ + \n /system/script/run \$Script;\r\ + \n } do={\r\ + \n :log error (\"Run script \" . [ /system/script/get \$Script name \ + ] . \" width marker \\\" GlobalRUN\\\" failed: \" . \$Err);\r\ + \n }\r\ + \n}\r\ + \n\r\ + \n# signal we are ready\r\ + \n:set GlobalConfReady true;\r\ + \n:while (\$GlobalConfReady != true) do={:delay 500ms};\r\ + \n" +add comment="Global functions" dont-require-permissions=no name=AM-GlobalFunc \ + owner=AM-GlobalFunc policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source="#\ + !rsc by Vados\r\ + \n# RouterOS script: AM-GglobalFunc\r\ + \n# Script comment: Global functions\r\ + \n# Copyright (c) 2005-2026 Vados \r\ + \n#\r\ + \n#\r\ + \n# requires RouterOS, version=7.19\r\ + \n# requires device-mode, fetch, scheduler\r\ + \n:local ExitOK false;\r\ + \n:local ScriptName [ :jobname ];\r\ + \n#:global checkRunJob \$SriptName;\r\ + \n#:global fixCRLF;\r\ + \n#:if (\$fixCRLF != false) do={\r\ + \n#:foreach fixScript in=([ /system/script/find where name~\"*\" ]) do={/s\ + ystem/script/set source=[ :tocrlf [ get \$fixScript source ] ] \$fixScript\ + }\r\ + \n#:if (\$fixCRLF != \"LF\") do={ /system/script/set source=[ :tocrlf [ g\ + et \$fixScript source ] ] \$fixScript};};\r\ + \n#}\r\ + \n:global GlobalFuncReady false;\r\ + \n\r\ + \n# Git commit id & info, expected configuration version\r\ + \n:global CommitId \"main/264/cbddfbab\";\r\ + \n:global CommitTAG \"unknown\";\r\ + \n:global CommitInfo \"Autocommit in repo: ros.vados.ru, generated by owne\ + r: root, in 02:55:03 28.04.2026.\";\r\ + \n\r\ + \n# The variables are received right here.\r\ + \n:global GlobalConfVersion 138;\r\ + \n\r\ + \n:global SumsDirAndFileName \"tmp/checksums.json\";\r\ + \n\r\ + \n:global Identity [/system/identity/get name];\r\ + \n:global IdentityShort [:pick \$Identity 0 18];\r\ + \n\r\ + \n:global devBoardName [/system/resource/get board-name];\r\ + \n:global devMode [/system/device-mode/get mode];\r\ + \n:global devCurArch [/system/resource/get architecture-name];\r\ + \n:global devCurVersion [/system/resource/get version];\r\ + \n\r\ + \n# Variables defined in AM-GlobalConfig.rsc\r\ + \n:global TerminalColorOutput;\r\ + \n:global CommentsInScripts;\r\ + \n:global DetectIpAddrDefault;\r\ + \n:global DetectIpAddrFallback;\r\ + \n:global updateChannel;\r\ + \n:global Domain;\r\ + \n:global EmailGeneralTo;\r\ + \n:global BackupAndUpdateMode;\r\ + \n\r\ + \n# Single functions, without nested functions.\r\ + \n:global GlobalEnvRemove;\r\ + \n:global MiniDateTimeStamp;\r\ + \n\r\ + \n# Include globals \$PrintDebug and \$PrintDebugOverride\r\ + \n:global LogPrint;\r\ + \n\r\ + \n# DeviceInfo and Updates\r\ + \n:global IsCheckUpdates;\r\ + \n:global WaitCheckUpdates;\r\ + \n:global GetPubIp;\r\ + \n\r\ + \n:global GetArrDeviceInfo;\r\ + \n:global WaitArrDeviceInfo;\r\ + \n\r\ + \n:global devModel;\r\ + \n:global devRunningMode;\r\ + \n\r\ + \n:global devRbRevision;\r\ + \n:global devRbSerialNumber;\r\ + \n:global devRbVerAvail;\r\ + \n\r\ + \n:global runningChannelVersion;\r\ + \n:global runningChannel;\r\ + \n:global runningVersion;\r\ + \n\r\ + \n:global devBuildTime;\r\ + \n:global ROsVerAvail;\r\ + \n:global PkgUpdStatus;\r\ + \n:global currentUpdateChannel;\r\ + \n\r\ + \n:global ScriptInstallUpdate;\r\ + \n\r\ + \n:global DeviceInfo;\r\ + \n\r\ + \n:global OldMode;\r\ + \n\r\ + \n:global ParseKeyValueStore;\r\ + \n:global RandomDelay;\r\ + \n:global GetRandomNumber;\r\ + \n:global EscapeForRegEx;\r\ + \n:global ExitError;\r\ + \n:global CharacterMultiply;\r\ + \n:global CharacterReplace;\r\ + \n:global CleanFilePath;\r\ + \n:global CleanName;\r\ + \n\r\ + \n:global CommitBrief;\r\ + \n\r\ + \n:global EitherOr;\r\ + \n:global FormatLine;\r\ + \n:global GetRandom20CharAlNum;\r\ + \n:global Grep;\r\ + \n:global IfThenElse;\r\ + \n:global MAX;\r\ + \n:global MIN;\r\ + \n:global HumanReadableNum;\r\ + \n\r\ + \n:global IsFullyConnected;\r\ + \n:global IsDNSResolving;\r\ + \n:global IsTimeSync;\r\ + \n:global IsTimeSyncCached;\r\ + \n:global IsTimeSyncResetNtp;\r\ + \n\r\ + \n:global WaitDNSResolving;\r\ + \n:global WaitFullyConnected;\r\ + \n:global WaitTimeSync;\r\ + \n:global MkDir;\r\ + \n:global RmDir;\r\ + \n:global RmFile;\r\ + \n:global FileGet;\r\ + \n:global Unix2Dos;\r\ + \n:global UrlEncode;\r\ + \n:global WaitForFile;\r\ + \n:global ScriptLock;\r\ + \n:global SendTelegram;\r\ + \n:global NotificationFunctions;\r\ + \n:global SendNotification;\r\ + \n:global SendNotification2;\r\ + \n:global SymbolForNotification;\r\ + \n:global SymbolByUnicodeName;\r\ + \n:global ValidateSyntax;\r\ + \n:global CheckSumsVerify;\r\ + \n:global GlobalConfChanges;\r\ + \n:global GlobalConfMigration;\r\ + \n:global VersionToNum;\r\ + \n:global RequiredRouterOS;\r\ + \n:global FetchLargeFiles;\r\ + \n:global FetchUserAgentStr;\r\ + \n:global CertificateAvailable;\r\ + \n:global CertificateDownload;\r\ + \n:global CertificateNameByCN;\r\ + \n:global CharacterMultiply;\r\ + \n\r\ + \n:global InspectVar;\r\ + \n:global InspectVarRet;\r\ + \n:global ParseCustom;\r\ + \n\r\ + \n:set IsCheckUpdates do={\r\ + \n :local isInfo [:tobool \$1];\r\ + \n :global LogPrint;\r\ + \n :global updateChannel;\r\ + \n :global PkgUpdStatus;\r\ + \n :global currentUpdateChannel;\r\ + \n :global ROsVerAvail;\r\ + \n :global arrDeviceInfo;\r\ + \n \$LogPrint debug \$0 (\"\\\$isInfo = \" . \$isInfo); \r\ + \n :local CurrentChannel [ /system/package/update/get channel ];\r\ + \n :if ([ :len \$updateChannel ] > 0 && \$CurrentChannel != \$updateChann\ + el) do={\r\ + \n :retry command={/system/package/update set channel=\$updateChannel} \ + \_delay=300ms max=5 on-error={};\r\ + \n \$LogPrint debug \$0 (\"Set updates channel to: \$updateChannel\");\ + \r\ + \n }\r\ + \n\r\ + \n :local Update [ /system/package/update/get ];\r\ + \n :local Channel [ :tostr (\$Update->\"channel\") ];\r\ + \n :set currentUpdateChannel \$Channel;\r\ + \n \$LogPrint debug \$0 (\"Update Channel: \" . \$Channel . \".\");\r\ + \n\r\ + \n\r\ + \n :local StatusPkg \"undefined\";\r\ + \n \$LogPrint debug \$0 (\"Checking for updates...\");\r\ + \n :retry command={:set \$StatusPkg ([/system/package/update/check-for-up\ + dates without-paging as-value]->\"status\")} \\\r\ + \n delay=300ms max=5 on-error={};\r\ + \n \$LogPrint debug \$0 (\"\\\$StatusPkg = \" . \$StatusPkg);\r\ + \n :if (\$StatusPkg = \"New version is available\") do={ :set PkgUpdStatu\ + s true; } else={ :set PkgUpdStatus false; }\r\ + \n :set ROsVerAvail [ :tostr [ /system/package/update/get latest-version \ + ] ];\r\ + \n \$LogPrint debug \$0 (\"\\\$PkgUpdStatus = \" . \$PkgUpdStatus);\r\ + \n :if (\$isInfo != false || \$PkgUpdStatus = true) do={\r\ + \n \$LogPrint debug \$0 (\"\\\$PkgUpdStatus = \" . \$PkgUpdStatus);\r\ + \n :if ([ :typeof \$arrDeviceInfo ] != \"array\") do={\r\ + \n :set arrDeviceInfo [:toarray \$arrDeviceInfo];\r\ + \n }\r\ + \n :retry command={:set (\$arrDeviceInfo->\"devUpdates\") [ /system/pac\ + kage/update/get ]} delay=500ms max=5 on-error={:log error (\"Error\")};\r\ + \n :return true;\r\ + \n } else={\r\ + \n :return \$PkgUpdStatus;\r\ + \n }\r\ + \n}\r\ + \n\r\ + \n:set WaitCheckUpdates do={\r\ + \n :global IsCheckUpdates;\r\ + \n :global PkgUpdStatus;\r\ + \n :global currentUpdateChannel;\r\ + \n :global ROsVerAvail;\r\ + \n :global arrDeviceInfo;\r\ + \n\r\ + \n :local Status \"\";\r\ + \n :local Update;\r\ + \n :local WaitCount 0;\r\ + \n\r\ + \n :if ([ \$IsCheckUpdates true ] = false) do={\r\ + \n :return false;\r\ + \n }\r\ + \n\r\ + \n :set Status [ :tostr [ /system/package/update/get status ] ];\r\ + \n :while ((\$Status = \"\" || \$Status = \"finding out latest version...\ + \") && \$WaitCount < 60) do={\r\ + \n :delay 1s;\r\ + \n :set WaitCount (\$WaitCount + 1);\r\ + \n :set Status [ :tostr [ /system/package/update/get status ] ];\r\ + \n }\r\ + \n\r\ + \n :set Update [ /system/package/update/get ];\r\ + \n :set currentUpdateChannel [ :tostr (\$Update->\"channel\") ];\r\ + \n :set ROsVerAvail [ :tostr (\$Update->\"latest-version\") ];\r\ + \n :if ((\$Update->\"status\") = \"New version is available\") do={\r\ + \n :set PkgUpdStatus true;\r\ + \n } else={\r\ + \n :set PkgUpdStatus false;\r\ + \n }\r\ + \n :if ([ :typeof \$arrDeviceInfo ] != \"array\") do={\r\ + \n :set arrDeviceInfo [:toarray \$arrDeviceInfo];\r\ + \n }\r\ + \n :set (\$arrDeviceInfo->\"devUpdates\") \$Update;\r\ + \n\r\ + \n :if (\$Status = \"\" || \$Status = \"finding out latest version...\") \ + do={\r\ + \n :return false;\r\ + \n }\r\ + \n :return true;\r\ + \n}\r\ + \n\r\ + \n:set WaitArrDeviceInfo do={\r\ + \n :global GetArrDeviceInfo;\r\ + \n :while ([ \$GetArrDeviceInfo ] = false) do={\r\ + \n :delay 1s;\r\ + \n }\r\ + \n}\r\ + \n\r\ + \n:set GetArrDeviceInfo do={\r\ + \n :global LogPrint;\r\ + \n :global arrDeviceInfo;\r\ + \n\r\ + \n :global devBoardName;\r\ + \n :global devModel;\r\ + \n :global devRunning;\r\ + \n :global devCurArch;\r\ + \n :global devRbRevision;\r\ + \n :global devRbSerialNumber;\r\ + \n :global devBuildTime;\r\ + \n :global runningChannelVersion;\r\ + \n :global runningChannel;\r\ + \n :global runningVersion;\r\ + \n :global currentUpdateChannel;\r\ + \n :global ROsVerAvail;\r\ + \n\r\ + \n :local DeviceInfo;\r\ + \n :local Resource [/system/resource/get];\r\ + \n :local Update [ /system/package/update/get ];\r\ + \n :local VersionString [ :tostr (\$Resource->\"version\") ];\r\ + \n :local ChannelStart [ :find \$VersionString \" (\" ];\r\ + \n :local RouterBoard;\r\ + \n :local IsRouterBoard false;\r\ + \n :local RunningMode \"\";\r\ + \n\r\ + \n :set devCurArch [ :tostr (\$Resource->\"architecture-name\") ];\r\ + \n :set devBuildTime [ :tostr (\$Resource->\"build-time\") ];\r\ + \n :set runningChannelVersion \$VersionString;\r\ + \n :set runningVersion \$VersionString;\r\ + \n :set runningChannel \"\";\r\ + \n\r\ + \n :if ([ :typeof \$ChannelStart ] = \"num\" && \$ChannelStart >= 0) do=\ + {\r\ + \n :set runningVersion [ :pick \$VersionString 0 \$ChannelStart ];\r\ + \n :local ChannelRest [ :pick \$VersionString (\$ChannelStart + 2) [ :\ + len \$VersionString ] ];\r\ + \n :local ChannelEnd [ :find \$ChannelRest \")\" ];\r\ + \n :if ([ :typeof \$ChannelEnd ] = \"num\" && \$ChannelEnd >= 0) do={\ + \r\ + \n :set runningChannel [ :pick \$ChannelRest 0 \$ChannelEnd ];\r\ + \n }\r\ + \n }\r\ + \n\r\ + \n :if ([:pick \$devBoardName 0 3] != \"CHR\" or [:pick \$devBoardName 0\ + \_3] != \"x86\") do={\r\ + \n :do {\r\ + \n :set RouterBoard [[ :parse \"/system/routerboard/get\" ]];\r\ + \n# :set RouterBoard [ /system/routerboard/get ];\r\ + \n :if ((\$RouterBoard->\"routerboard\") = true) do={\r\ + \n :set IsRouterBoard true;\r\ + \n }\r\ + \n } on-error={}\r\ + \n }\r\ + \n\r\ + \n :do {\r\ + \n :set RunningMode [ /system/device-mode/get mode ];\r\ + \n } on-error={\r\ + \n :do {\r\ + \n :set RunningMode [ /system/device-mode/get running ];\r\ + \n } on-error={\r\ + \n :set RunningMode \"\";\r\ + \n }\r\ + \n }\r\ + \n :set devRunning \$RunningMode;\r\ + \n\r\ + \n :if (\$IsRouterBoard = true) do={\r\ + \n :set devModel [ :tostr (\$RouterBoard->\"model\") ];\r\ + \n :set devRbRevision [ :tostr (\$RouterBoard->\"revision\") ];\r\ + \n :set devRbSerialNumber [ :tostr (\$RouterBoard->\"serial-number\") \ + ];\r\ + \n } else={\r\ + \n :set devModel \$devBoardName;\r\ + \n :set devRbRevision \"\";\r\ + \n :set devRbSerialNumber \"\";\r\ + \n }\r\ + \n\r\ + \n :set currentUpdateChannel [ :tostr (\$Update->\"channel\") ];\r\ + \n :set ROsVerAvail [ :tostr (\$Update->\"latest-version\") ];\r\ + \n\r\ + \n :set (\$DeviceInfo->\"board-name\") \$devBoardName;\r\ + \n :set (\$DeviceInfo->\"architecture-name\") \$devCurArch;\r\ + \n :set (\$DeviceInfo->\"model\") \$devModel;\r\ + \n :set (\$DeviceInfo->\"revision\") \$devRbRevision;\r\ + \n :set (\$DeviceInfo->\"serial-number\") \$devRbSerialNumber;\r\ + \n :set (\$DeviceInfo->\"running-mode\") \$devRunning;\r\ + \n :set (\$DeviceInfo->\"build-time\") \$devBuildTime;\r\ + \n :set (\$DeviceInfo->\"running-channel-version\") \$runningChannelVers\ + ion;\r\ + \n :set (\$DeviceInfo->\"running-version\") \$runningVersion;\r\ + \n :set (\$DeviceInfo->\"running-channel\") \$runningChannel;\r\ + \n :set (\$DeviceInfo->\"routerboard\") \$IsRouterBoard;\r\ + \n :set (\$DeviceInfo->\"current-firmware\") [ :tostr (\$RouterBoard->\"\ + current-firmware\") ];\r\ + \n :set (\$DeviceInfo->\"upgrade-firmware\") [ :tostr (\$RouterBoard->\"\ + upgrade-firmware\") ];\r\ + \n :set (\$DeviceInfo->\"package-channel\") \$currentUpdateChannel;\r\ + \n :set (\$DeviceInfo->\"installed-version\") [ :tostr (\$Update->\"inst\ + alled-version\") ];\r\ + \n :set (\$DeviceInfo->\"latest-version\") \$ROsVerAvail;\r\ + \n :set (\$DeviceInfo->\"update-status\") [ :tostr (\$Update->\"status\"\ + ) ];\r\ + \n\r\ + \n :set arrDeviceInfo \$DeviceInfo;\r\ + \n :return \$DeviceInfo;\r\ + \n}\r\ + \n\r\ + \n:set DeviceInfo do={\r\ + \n :global GetArrDeviceInfo;\r\ + \n :global GlobalConfVersion;\r\ + \n :global Identity;\r\ + \n :global IfThenElse;\r\ + \n :global FormatLine;\r\ + \n :global CommitBrief;\r\ + \n\r\ + \n :local License [/system/license/get];\r\ + \n :local Snmp [ /snmp/get ];\r\ + \n :local Info [ \$GetArrDeviceInfo ];\r\ + \n\r\ + \n :if ([ :typeof \$Info ] != \"array\") do={\r\ + \n :return false;\r\ + \n }\r\ + \n\r\ + \n :return ( \\\r\ + \n [ \$FormatLine \"Hostname\" \$Identity ] . \"\\n\" . \\\r\ + \n [ \$IfThenElse ([ :len (\$Snmp->\"location\") ] > 0) \\\r\ + \n ([ \$FormatLine \"Location\" (\$Snmp->\"location\") ] . \"\\n\") ]\ + \_. \\\r\ + \n [ \$IfThenElse ([ :len (\$Snmp->\"contact\") ] > 0) \\\r\ + \n ([ \$FormatLine \"Contact\" (\$Snmp->\"contact\") ] . \"\\n\") ] .\ + \_\\\r\ + \n \"Hardware:\\n\" . \\\r\ + \n [ \$FormatLine \" Board\" (\$Info->\"board-name\") ] . \"\\n\" . \ + \\\r\ + \n [ \$FormatLine \" Arch\" (\$Info->\"architecture-name\") ] . \"\\\ + n\" . \\\r\ + \n [ \$FormatLine \" Model\" (\$Info->\"model\") ] . \\\r\ + \n [ \$IfThenElse ([ :len (\$Info->\"revision\") ] > 0) \\\r\ + \n (\" \" . (\$Info->\"revision\")) ] . \"\\n\" . \\\r\ + \n [ \$IfThenElse ([ :len (\$Info->\"serial-number\") ] > 0) \\\r\ + \n ([ \$FormatLine \" Serial\" (\$Info->\"serial-number\") ] . \"\ + \\n\") ] . \\\r\ + \n [ \$IfThenElse ([ :len (\$License->\"nlevel\") ] > 0) \\\r\ + \n ([ \$FormatLine \" License\" (\"level \" . (\$License->\"nlevel\ + \")) ] . \"\\n\") ] . \\\r\ + \n \"RouterOS:\\n\" . \\\r\ + \n [ \$IfThenElse ([ :len (\$License->\"level\") ] > 0) \\\r\ + \n ([ \$FormatLine \" License\" (\"level \" . (\$License->\"level\ + \")) ] . \"\\n\") ] . \\\r\ + \n [ \$FormatLine \" Channel\" (\$Info->\"package-channel\") ] . \"\ + \\n\" . \\\r\ + \n [ \$FormatLine \" Installed\" (\$Info->\"installed-version\") ] .\ + \_\"\\n\" . \\\r\ + \n [ \$IfThenElse ([ :len (\$Info->\"running-channel\") ] > 0) \\\r\ + \n ([ \$FormatLine \" Running\" ((\$Info->\"running-version\") . \ + \" (\" . (\$Info->\"running-channel\") . \")\") ] . \"\\n\") \\\r\ + \n ([ \$FormatLine \" Running\" (\$Info->\"running-version\") ] . \ + \"\\n\") ] . \\\r\ + \n [ \$IfThenElse ([ :len (\$Info->\"latest-version\") ] > 0 && \\\r\ + \n (\$Info->\"installed-version\") != (\$Info->\"latest-version\"))\ + \_\\\r\ + \n ([ \$FormatLine \" Available\" (\$Info->\"latest-version\") ] .\ + \_\"\\n\") ] . \\\r\ + \n [ \$IfThenElse ((\$Info->\"routerboard\") = true && \\\r\ + \n (\$Info->\"current-firmware\") != (\$Info->\"upgrade-firmware\")\ + ) \\\r\ + \n ([ \$FormatLine \" Firmware\" ((\$Info->\"current-firmware\") .\ + \_\" -> \" . (\$Info->\"upgrade-firmware\")) ] . \"\\n\") ] . \\\r\ + \n \"RouterOS-Scripts:\\n\" . \\\r\ + \n [ \$FormatLine \" Commit\" [ \$CommitBrief ] ] . \"\\n\" . \\\r\ + \n [ \$FormatLine \" Version\" \$GlobalConfVersion ]);\r\ + \n}\r\ + \n\r\ + \n:if ([ :typeof \$NotificationFunctions ] != \"array\") do={:set Notifica\ + tionFunctions ({})}\r\ + \n:set GetRandom20CharAlNum do={\r\ + \n :global EitherOr;\r\ + \n :return [ :rndstr length=[ \$EitherOr [ :tonum \$1 ] 20 ] from=\"ABCDE\ + FGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\" ];\r\ + \n}\r\ + \n\r\ + \n:global checkRunJob;\r\ + \n:set checkRunJob do={\r\ + \n :local Script [ :tostr \$1 ];\r\ + \n :global ScriptLock; \r\ + \n :if ([ \$ScriptLock \$Script ] = false) do={:return false}\r\ + \n :foreach Job in=[ /system/script/job/find where script=\$Script ] do={\ + :set Job [ /system/script/job/get \$Job ];\r\ + \n :while ([ :typeof (\$Job->\"parent\") ] = \"id\") do={:set Job [ /sy\ + stem/script/job/get [ find where .id=(\$Job->\"parent\") ] ]}\r\ + \n :if ((\$Job->\"type\") = \"login\") do={:return true};}; :return fa\ + lse; \r\ + \n}\r\ + \n\r\ + \n:set InspectVar do={\r\ + \n :global InspectVarRet;\r\ + \n :put [ :tocrlf [ \$InspectVarRet \$1 ] ];\r\ + \n}\r\ + \n\r\ + \n:set CommitBrief do={\r\ + \n :global CommitId;\r\ + \n :global CommitInfo;\r\ + \n :if (\$CommitId = \"unknown\") do={\r\ + \n :return \"unknown\";\r\ + \n }\r\ + \n :return (\$CommitInfo . \"/\" . [ :pick \$CommitId 0 8 ]);\r\ + \n}\r\ + \n\r\ + \n:set InspectVarRet do={\r\ + \n :local Input \$1;\r\ + \n :local Level (0 + [ :tonum \$2 ]);\r\ + \n :global CharacterReplace;\r\ + \n :global IfThenElse;\r\ + \n :global InspectVarRet;\r\ + \n :local IndentReturn do={\r\ + \n :local Prefix [ :tostr \$1 ];\r\ + \n :local Value [ :tostr \$2 ];\r\ + \n :local Level [ :tonum \$3 ];\r\ + \n :global CharacterMultiply;\r\ + \n :return ([ \$CharacterMultiply \" \" (\$Level * 2) ] . \"-\" . \$Pre\ + fix . \"-> \" . \$Value);\r\ + \n }\r\ + \n :local TypeOf [ :typeof \$Input ];\r\ + \n :local Len [ :len \$Input ];\r\ + \n :local Return [ \$IndentReturn \"type\" \$TypeOf \$Level ];\r\ + \n :if (\$TypeOf = \"array\") do={\r\ + \n :foreach Key,Value in=\$Input do={\r\ + \n :set \$Return (\$Return . \"\\n\" . \\\r\ + \n [ \$IndentReturn \"key\" \$Key (\$Level + 1) ] . \"\\n\" . \\\r\ + \n [ \$InspectVarRet \$Value (\$Level + 2) ]);\r\ + \n }\r\ + \n } else={\r\ + \n :if (\$TypeOf = \"str\") do={\r\ + \n :set \$Return (\$Return . \"\\n\" . \\\r\ + \n [ \$IndentReturn \"len\" \$Len \$Level ]);\r\ + \n :if ([ :typeof [ :find \$Input (\"\\r\") ] ] = \"num\") do={\r\ + \n :set Input [ \$CharacterReplace \$Input (\"\\r\") \"\" ];\r\ + \n }\r\ + \n :if ([ :typeof [ :find \$Input (\"\\n\") ] ] = \"num\") do={\r\ + \n :set Input [ \$CharacterReplace \$Input (\"\\n\") \" \" ];\r\ + \n }\r\ + \n }\r\ + \n :if (\$TypeOf != \"nothing\") do={\r\ + \n :set \$Return (\$Return . \"\\n\" . \\\r\ + \n [ \$IndentReturn \"value\" [ \$IfThenElse ([ :len \$Input ] > 80)\ + \_\\\r\ + \n ([ :pick \$Input 0 77 ] . \"...\") \$Input ] \$Level ]);\r\ + \n }\r\ + \n }\r\ + \n :return \$Return;\r\ + \n}\r\ + \n\r\ + \n# !!! The function is not ready !!!\r\ + \n:global FetchHttpInfo do={\r\ + \n :local Mac [ :tostr \$1 ];\r\ + \n :global CertificateAvailable;\r\ + \n :global IsMacLocallyAdministered;\r\ + \n :global LogPrint;\r\ + \n :local Url \"https://api.macvendors.com/\";\r\ + \n :if ([ \$IsMacLocallyAdministered \$Mac ] = true) do={:return \"locall\ + y administered\";}\r\ + \n :do {\r\ + \n :if ([ \$CertificateAvailable \"GTS Root R4\" \"fetch\" ] = false) d\ + o={\r\ + \n \$LogPrint warning \$0 (\"Downloading required certificate failed.\ + \");\r\ + \n :error false;\r\ + \n }\r\ + \n :local Vendor ([ /tool/fetch \r\ + \n (\$Url . [ :pick \$Mac 0 8 ]) output=user as-value ]->\"data\");\r\ + \n :return \$Vendor;\r\ + \n } on-error={\r\ + \n :onerror Err {\r\ + \n /tool/fetch check-certificate=yes-without-crl (\$Url) output=none \ + as-value;\r\ + \n \$LogPrint debug \$0 (\"The mac vendor is not known in database.\"\ + );\r\ + \n } do={ \$LogPrint warning \$0 (\"Failed getting mac vendor: \" . \$E\ + rr); }\r\ + \n :return \"unknown vendor\";\r\ + \n }\r\ + \n}\r\ + \n\r\ + \n:set GetPubIp do={\r\ + \n :global DetectIpAddrDefault;\r\ + \n :global DetectIpAddrFallback;\r\ + \n :global LogPrint;\r\ + \n \r\ + \n :local PubIpAddr false;\r\ + \n :local Url \$DetectIpAddrDefault;\r\ + \n\r\ + \n# :retry command={abc} delay=1 max=2 on-error={:put \"got error\"} \r\ + \n :do {\r\ + \n \$LogPrint debug \$0 (\"Trying to detect public IP using default s\ + ervice: \" . \$Url . \"...\");\r\ + \n :retry command={:set PubIpAddr ([ /tool/fetch http-method=\"get\"\ + \_check-certificate=yes-without-crl \$Url output=user as-value ]->\"data\"\ + )} \\\r\ + \n delay=50ms max=5 on-error={\$LogPrint error [ :jobname ] (\"Fail\ + ed to detect public IP using default service: \" . \$Url . \".\")}\r\ + \n #:error \"Failed to detect public IP using default service: \$Url\ + .\"};\r\ + \n } on-error={\r\ + \n \$LogPrint error \$0 (\"Failed to detect public IP using default s\ + ervice: \" . \$Url . \".\");\r\ + \n :set Url \$DetectIpAddrFallBack;\r\ + \n \$LogPrint debug \$0 (\"Trying to detect public IP using fallback \ + service: \" . \$Url . \"...\");\r\ + \n :retry command={:set PubIpAddr ([ /tool/fetch http-method=\"get\"\ + \_check-certificate=yes-without-crl \$Url output=user as-value ]->\"data\"\ + )} \\\r\ + \n delay=200ms max=5 on-error={\$LogPrint error [ :jobname ] (\"Fai\ + led to detect public IP using fallback service: \" . \$Url . \".\")}\r\ + \n };\r\ + \n :if (\$PubIpAddr = false) do={\r\ + \n :set PubIpAddr \"not-detected\";\r\ + \n } else={\r\ + \n :set PubIpAddr [ :pick \$PubIpAddr 0 15];\r\ + \n }\r\ + \n :return \$PubIpAddr;\r\ + \n}\r\ + \n\r\ + \n:set FormatLine do={\r\ + \n :local Key [ :tostr \$1 ];\r\ + \n :local Value [ :tostr \$2 ];\r\ + \n :local Indent [ :tonum \$3 ];\r\ + \n :local Spaces;\r\ + \n :local Return \"\";\r\ + \n :global CharacterMultiply;\r\ + \n :global EitherOr;\r\ + \n :set Indent [ \$EitherOr \$Indent 16 ];\r\ + \n :local Spaces [ \$CharacterMultiply \" \" \$Indent ];\r\ + \n :if ([ :len \$Key ] > 0) do={ :set Return (\$Key . \":\")}\r\ + \n :if ([ :len \$Key ] > (\$Indent - 2)) do={:set Return (\$Return . \"\\\ + n\" . [ :pick \$Spaces 0 \$Indent ] . \$Value);\r\ + \n } else={:set Return (\$Return . [ :pick \$Spaces 0 (\$Indent - [ :len \ + \$Return ]) ] . \$Value)}\r\ + \n :return \$Return;\r\ + \n}\r\ + \n\r\ + \n:set ParseCustom do={\r\ + \n :local Str [ :tostr \$1 ];\r\ + \n :local Start [:find [ \$Str ] [:tostr \$2]];\r\ + \n :local End [ :tostr \$3 ];\r\ + \n :local Num [ :tonum \$4 ];\r\ + \n :local Return;\r\ + \n :if ([:len \$Num] = 0) do={:set Num \"0\"}\r\ + \n :local rest [:pick \$Str (\$Start+\$Num) [:len \$Str]]; \r\ + \n :if ([:len \$End ] = 0) do={:set Return [:pick \$Str \$Num \$Start]} e\ + lse={\r\ + \n :set End [:find \$rest \$End];\r\ + \n :set Return [:pick \$rest 0 \$End];\r\ + \n }\r\ + \n:return \$Return;\r\ + \n}\r\ + \n\r\ + \n:set LogPrint do={\r\ + \n :local Severity [ :tostr \$1 ];\r\ + \n :local Name [ :tostr \$2 ];\r\ + \n :local Message [ :tostr \$3 ];\r\ + \n :global PrintDebug;\r\ + \n :global PrintDebugOverride;\r\ + \n :global EitherOr;\r\ + \n :local Debug [ \$EitherOr (\$PrintDebugOverride->\$Name) \$PrintDebug \ + ];\r\ + \n :local PrintSeverity do={\r\ + \n :global TerminalColorOutput;\r\ + \n :if (\$TerminalColorOutput != true) do={:return \$1}\r\ + \n :local Color { debug=96; info=97; warning=93; error=91 };\r\ + \n :return (\"\\1B[\" . \$Color->\$1 . \"m\" . \$1 . \"\\1B[0m\");\r\ + \n}\r\ + \n :local Log ([ \$EitherOr \$Name \"\" ] . \": \" . \$Message);\ + \r\ + \n :if (\$Severity ~ (\"^(custom|debug|error|info)\\\$\")) do={\r\ + \n :if (\$Severity = \"debug\") do={:log debug \$Log}\r\ + \n :if (\$Severity = \"error\") do={:log error \$Log}\r\ + \n :if (\$Severity = \"info\" ) do={:log info \$Log}\r\ + \n } else={:log warning \$Log; :set Severity \"warning\"}\r\ + \n :if (\$Severity != \"debug\" || \$Debug = true) do={:put ([ \$PrintSev\ + erity \$Severity ] . \": \" . \$Message)}\r\ + \n}\r\ + \n\r\ + \n:set CertificateAvailable do={\r\ + \n :local CommonName [ :tostr \$1 ];\r\ + \n :local UseFor [ :tostr \$2 ];\r\ + \n :global CertificateDownload;\r\ + \n :global EitherOr;\r\ + \n :global LogPrint;\r\ + \n :global ParseKeyValueStore;\r\ + \n :set UseFor [ \$EitherOr \$UseFor \"undefined\" ];\r\ + \n :if ([ /system/resource/get free-hdd-space ] < 8388608 && \\\r\ + \n [ /certificate/settings/get crl-download ] = true && \\\r\ + \n [ /certificate/settings/get crl-store ] = \"system\") do={\r\ + \n \$LogPrint warning \$0 (\"This system has low free flash space but \ + \" . \\\r\ + \n \"is configured to download certificate CRLs to system!\");\r\ + \n }\r\ + \n :if ([ :len \$CommonName ] = 0) do={\r\ + \n \$LogPrint warning \$0 (\"No CommonName given!\");\r\ + \n :return false;\r\ + \n }\r\ + \n :local CertSettings [ /certificate/settings/get ];\r\ + \n :if (((\$CertSettings->\"builtin-trust-anchors\") = \"trusted\" || \\\ + \r\ + \n (\$CertSettings->\"builtin-trust-store\") ~ \$UseFor || \\\r\ + \n (\$CertSettings->\"builtin-trust-store\") = \"all\") && \\\r\ + \n [ :len [ /certificate/builtin/find where common-name=\$CommonName\ + \_] ] > 0) do={\r\ + \n :return true;\r\ + \n }\r\ + \n :if ([ :len [ /certificate/find where common-name=\$CommonName ] ] = 0\ + ) do={\r\ + \n \$LogPrint info \$0 (\"Certificate with CommonName '\" . \$CommonNam\ + e . \"' not available.\");\r\ + \n :if ([ \$CertificateDownload \$CommonName ] = false) do={:return fal\ + se}\r\ + \n }\r\ + \n :if ([ :len [ /certificate/find where common-name=\$CommonName ] ] > 1\ + ) do={\r\ + \n \$LogPrint info \$0 (\"There are \" . \$CertCount . \" Certificates \ + with CommonName '\" . \$CommonName . \"'. Should be ok.\");\r\ + \n :return true;\r\ + \n }\r\ + \n :local CertVal [ /certificate/get [ find where common-name=\$CommonNam\ + e ] ];\r\ + \n :while ((\$CertVal->\"akid\") != \"\" && (\$CertVal->\"akid\") != (\$C\ + ertVal->\"skid\")) do={\r\ + \n :if ([ :len [ /certificate/find where skid=(\$CertVal->\"akid\") ] ]\ + \_= 0) do={\r\ + \n :local IssuerCN ([ \$ParseKeyValueStore (\$CertVal->\"issuer\") ]-\ + >\"CN\");\r\ + \n \$LogPrint info \$0 (\"Certificate chain for '\" . \$CommonName . \ + \"' is incomplete, missing '\" . \$IssuerCN . \"'.\");\r\ + \n :if ([ \$CertificateDownload \$IssuerCN ] = false) do={:return fal\ + se}\r\ + \n }\r\ + \n :set CertVal [ /certificate/get [ find where skid=(\$CertVal->\"akid\ + \") ] ];\r\ + \n }\r\ + \n :return true;\r\ + \n}\r\ + \n\r\ + \n:set CertificateDownload do={\r\ + \n :local CommonName [ :tostr \$1 ];\r\ + \n :global GlobalScriptsUrl;\r\ + \n :global GlobalScriptsUrlSuffix;\r\ + \n :global CertificateNameByCN;\r\ + \n :global CleanName;\r\ + \n :global FetchUserAgentStr;\r\ + \n :global LogPrint;\r\ + \n :global RmFile;\r\ + \n :global WaitForFile;\r\ + \n \r\ + \n \$LogPrint info \$0 (\"Downloading and importing certificate with Comm\ + onName '\" . \$CommonName . \"'.\");\r\ + \n \r\ + \n :local FileName ([ \$CleanName \$CommonName ] . \".pem\");\r\ + \n :do {\r\ + \n /tool/fetch check-certificate=yes-without-crl http-header-field=({ [\ + \_\$FetchUserAgentStr \$0 ] }) \\\r\ + \n (\$GlobalScriptsUrl . \"certs/\" . \$FileName . \$GlobalScriptsUrl\ + Suffix) dst-path=\$FileName as-value;\r\ + \n \$WaitForFile \$FileName;\r\ + \n } on-error={\r\ + \n \$LogPrint warning \$0 (\"Failed downloading certificate with Common\ + Name '\" . \$CommonName . \\\r\ + \n \"' from repository! Trying fallback to mkcert.org...\");\r\ + \n :do {\r\ + \n :if ([ :len [ /certificate/find where common-name=\"ISRG Root X1\"\ + \_] ] = 0) do={\r\ + \n \$LogPrint error \$0 (\"Required certificate is not available.\"\ + );\r\ + \n :return false;\r\ + \n }\r\ + \n /tool/fetch check-certificate=yes-without-crl http-header-field=({\ + \_[ \$FetchUserAgentStr \$0 ] }) \\\r\ + \n \"https://mkcert.org/generate/\" http-data=[ :serialize to=json \ + ({ \$CommonName }) ] \\\r\ + \n dst-path=\$FileName as-value;\r\ + \n \$WaitForFile \$FileName;\r\ + \n :if ([ /file/get \$FileName size ] = 0) do={\r\ + \n \$RmFile \$FileName;\r\ + \n :error false;\r\ + \n }\r\ + \n } on-error={\r\ + \n \$LogPrint warning \$0 (\"Failed downloading certificate with Comm\ + onName '\" . \$CommonName . \"'!\");\r\ + \n :return false;\r\ + \n }\r\ + \n }\r\ + \n\r\ + \n /certificate/import file-name=\$FileName passphrase=\"\" as-value;\r\ + \n :delay 1s;\r\ + \n \$RmFile \$FileName;\r\ + \n\r\ + \n :if ([ :len [ /certificate/find where common-name=\$CommonName ] ] = 0\ + ) do={\r\ + \n /certificate/remove [ find where name~(\"^\" . \$FileName . \"_[0-9]\ + +\\\$\") ];\r\ + \n \$LogPrint warning \$0 (\"Certificate with CommonName '\" . \$Common\ + Name . \"' still unavailable!\");\r\ + \n :return false;\r\ + \n }\r\ + \n :foreach Cert in=[ /certificate/find where name~(\"^\" . \$FileName . \ + \"_[0-9]+\\\$\") ] do={\r\ + \n \$CertificateNameByCN [ /certificate/get \$Cert common-name ];\r\ + \n }\r\ + \n :return true;\r\ + \n}\r\ + \n\r\ + \n:set CertificateNameByCN do={\r\ + \n :local Match [ :tostr \$1 ];\r\ + \n :global CleanName;\r\ + \n :global LogPrint;\r\ + \n :local Cert ([ /certificate/find where (common-name=\$Match or fingerp\ + rint=\$Match or name=\$Match) ]->0);\r\ + \n :if ([ :len \$Cert ] = 0) do={\r\ + \n \$LogPrint warning \$0 (\"No matching certificate found.\");\r\ + \n :return false;\r\ + \n }\r\ + \n :local CommonName [ /certificate/get \$Cert common-name ];\r\ + \n /certificate/set \$Cert name=[ \$CleanName \$CommonName ];\r\ + \n :return true;\r\ + \n}\r\ + \n\r\ + \n:set CharacterMultiply do={\r\ + \n :local Str [ :tostr \$1 ];\r\ + \n :local Num [ :tonum \$2 ];\r\ + \n :if (\$Num = 0) do={:return \"\"}\r\ + \n :local Return \"\";\r\ + \n :for I from=1 to=\$Num do={:set Return (\$Return . \$Str)}\r\ + \n :return \$Return;\r\ + \n}\r\ + \n\r\ + \n:set FetchUserAgentStr do={\r\ + \n :local Caller [ :tostr \$1 ];\r\ + \n :global IfThenElse;\r\ + \n :local Resource [ /system/resource/get ];\r\ + \n :return (\"User-Agent: Mikrotik/\" . \$Resource->\"version\" . \" \" .\ + \_\$Resource->\"architecture-name\" . \\\r\ + \n \" \" . \$Caller . \"/Fetch (https://amster.vados.ru/; main/3419/3ee\ + 19780)\");\r\ + \n}\r\ + \n\r\ + \n:set Grep do={\r\ + \n :local Input ([ :tostr \$1 ] . \"\\n\");\r\ + \n :local Pattern [ :tostr \$2 ];\r\ + \n :if ([ :typeof [ :find \$Input \$Pattern ] ] = \"nil\") do={:return []\ + }\r\ + \n :do {\r\ + \n :local Line [ :pick \$Input 0 [ :find \$Input \"\\n\" ] ];\r\ + \n :if ([ :typeof [ :find \$Line \$Pattern ] ] = \"num\") do={:return \ + \$Line}\r\ + \n :set Input [ :pick \$Input ([ :find \$Input \"\\n\" ] + 1) [ :len \$\ + Input ] ];\r\ + \n } while=([ :len \$Input ] > 0);\r\ + \n :return [];\r\ + \n}\r\ + \n\r\ + \n:set HumanReadableNum do={\r\ + \n :local Input [ :tonum \$1 ];\r\ + \n :local Base [ :tonum \$2 ];\r\ + \n :global EitherOr;\r\ + \n :global IfThenElse;\r\ + \n :local Prefix \"kMGTPE\";\r\ + \n :local Pow 1;\r\ + \n :set Base [ \$EitherOr \$Base 1024 ];\r\ + \n :local Bin [ \$IfThenElse (\$Base = 1024) \"i\" \"\" ];\r\ + \n :if (\$Input < \$Base) do={:return \$Input}\r\ + \n :for I from=0 to=[ :len \$Prefix ] do={\r\ + \n :set Pow (\$Pow * \$Base);\r\ + \n :if (\$Input / \$Base < \$Pow) do={\r\ + \n :set Prefix [ :pick \$Prefix \$I ];\r\ + \n :local Tmp1 (\$Input * 100 / \$Pow);\r\ + \n :local Tmp2 (\$Tmp1 / 100);\r\ + \n :if (\$Tmp2 >= 100) do={:return (\$Tmp2 . \$Prefix . \$Bin)}\r\ + \n :return (\$Tmp2 . \".\" . \\\r\ + \n [ :pick \$Tmp1 [ :len \$Tmp2 ] ([ :len \$Tmp1 ] - [ :len \$Tmp\ + 2 ] + 1) ] . \\\r\ + \n \$Prefix . \$Bin);\r\ + \n }\r\ + \n }\r\ + \n}\r\ + \n\r\ + \n:set CleanName do={\r\ + \n :local Input [ :tostr \$1 ];\r\ + \n :local Return \"\";\r\ + \n :for I from=0 to=([ :len \$Input ] - 1) do={\r\ + \n :local Char [ :pick \$Input \$I ];\r\ + \n :if ([ :typeof [ find \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqr\ + stuvwxyz0123456789\" \$Char ] ] = \"nil\") do={\r\ + \n :do {:if ([ :len \$Return ] = 0) do={:error true};\r\ + \n :if ([ :pick \$Return ([ :len \$Return ] - 1) ] = \"-\") do={:er\ + ror true}; :set Char \"-\"} on-error={:set Char \"\"}; \r\ + \n };\r\ + \n :set Return (\$Return . \$Char)};\r\ + \n :return \$Return;\r\ + \n}\r\ + \n\r\ + \n:set GetRandomNumber do={\r\ + \n :global EitherOr;\r\ + \n :return [ :rndnum from=0 to=[ \$EitherOr [ :tonum \$1 ] 4294967295 ] ]\ + \r\ + \n}\r\ + \n\r\ + \n:set RandomDelay do={\r\ + \n :local Time [ :tonum \$1 ];\r\ + \n :local Unit [ :tostr \$2 ];\r\ + \n :global EitherOr;\r\ + \n :global GetRandomNumber;\r\ + \n :global MAX;\r\ + \n :if (\$Time = 0) do={:return false}\r\ + \n :delay ([ \$MAX 10 [ \$GetRandomNumber ([ :tonsec [ :totime (\$Time . \ + [ \$EitherOr \$Unit \"s\" ]) ] ] / 1000000) ] ] . \"ms\");\r\ + \n}\r\ + \n\r\ + \n:set EscapeForRegEx do={\r\ + \n :local Input [ :tostr \$1 ];\r\ + \n :if ([ :len \$Input ] = 0) do={:return \"\"}\r\ + \n :local Return \"\";\r\ + \n :local Chars (\"^.[]\\\$()|*+\?{}\\\\\");\r\ + \n :for I from=0 to=([ :len \$Input ] - 1) do={\r\ + \n :local Char [ :pick \$Input \$I ];\r\ + \n :if ([ :find \$Chars \$Char ]) do={:set Char (\"\\\\\" . \$Char)}\r\ + \n :set Return (\$Return . \$Char);\r\ + \n }\r\ + \n :return \$Return;\r\ + \n}\r\ + \n:set ExitError do={\r\ + \n :local ExitOK [ :tostr \$1 ];\r\ + \n :local Name [ :tostr \$2 ];\r\ + \n :local Error [ :tostr \$3 ];\r\ + \n :global IfThenElse;\r\ + \n :global LogPrint;\r\ + \n :if (\$ExitOK = \"false\") do={\r\ + \n \$LogPrint error \$Name ([ \$IfThenElse ([ :pick \$Name 0 1 ] = \"\\\ + \$\") \\\r\ + \n \"Function\" \"Script\" ] . \" '\" . \$Name . \"' exited with er\ + ror\" . \\\r\ + \n [ \$IfThenElse (!(\$Error ~ \"^(|true|false)\\\$\")) (\": \" . \ + \$Error) \".\" ]);\r\ + \n }\r\ + \n}\r\ + \n\r\ + \n:set MiniDateTimeStamp do={\r\ + \n /system/clock;\r\ + \n :local vdate [get date];\r\ + \n :local vtime [get time];\r\ + \n :local vdoff [:toarray \"0,4,5,7,8,10\"];\r\ + \n :local MM [:pick \$vdate (\$vdoff->2) (\$vdoff->3)];\r\ + \n :local M [:tonum \$MM];\r\ + \n :if (\$vdate ~ \".../../....\") do={\r\ + \n :set vdoff [:toarray \"7,11,1,3,4,6\"];\r\ + \n :set M ([:find \"xxanebarprayunulugepctovecANEBARPRAYUNULUGE\ + PCTOVEC\" [:pick \$vdate (\$vdoff->2) (\$vdoff->3)] -1] / 2);\r\ + \n :if (\$M>12) do={:set M (\$M - 12)}\r\ + \n :set MM [:pick (100 + \$M) 1 3];\r\ + \n }\r\ + \n :local yyyy [:pick \$vdate (\$vdoff->0) (\$vdoff->1)];\r\ + \n :local dd [:pick \$vdate (\$vdoff->4) (\$vdoff->5)];\r\ + \n :local HH [:pick \$vtime 0 2];\r\ + \n :local mm [:pick \$vtime 3 5];\r\ + \n :local ss [:pick \$vtime 6 8];\r\ + \n :return ([\$yyyy] . [\$MM] . [\$dd] . [\$HH] . [\$mm] . [\$ss]);\r\ + \n}\r\ + \n\r\ + \n:set WaitForFile do={\r\ + \n :local FileName [ :tostr \$1 ];\r\ + \n :local WaitTime [ :totime \$2 ];\r\ + \n :global CleanFilePath;\r\ + \n :global EitherOr;\r\ + \n :global MAX;\r\ + \n :set FileName [ \$CleanFilePath \$FileName ];\r\ + \n :local Delay ([ \$MAX [ \$EitherOr \$WaitTime 2s ] 100ms ] / 9);\r\ + \n :do {\r\ + \n :retry {\r\ + \n /file/get \$FileName;\r\ + \n :return true;\r\ + \n } delay=\$Delay max=10;\r\ + \n } on-error={ }\r\ + \n :while ([ :len [ /file/find where name=\$FileName ] ] > 0) do={\r\ + \n :do {\r\ + \n /file/get \$FileName;\r\ + \n :return true;\r\ + \n } on-error={ }\r\ + \n :delay \$Delay;\r\ + \n :set Delay (\$Delay * 3 / 2);\r\ + \n }\r\ + \n :return false;\r\ + \n}\r\ + \n\r\ + \n:set FileGet do={\r\ + \n :local FileName [ :tostr \$1 ];\r\ + \n :global WaitForFile;\r\ + \n :if ([ \$WaitForFile \$FileName 0s ] = false) do={:return false}\r\ + \n :local FileVal false;\r\ + \n :do {:set FileVal [ /file/get \$FileName ];\r\ + \n } on-error={ }\r\ + \n :return \$FileVal;\r\ + \n}\r\ + \n\r\ + \n:set RmDir do={\r\ + \n :local DirName [ :tostr \$1 ];\r\ + \n :global FileGet;\r\ + \n :global LogPrint;\r\ + \n \$LogPrint debug \$0 (\"Removing directory: \". \$DirName);\r\ + \n :local DirVal [ \$FileGet \$DirName ];\r\ + \n :if (\$DirVal = false) do={\$LogPrint debug \$0 (\"... which does not \ + exist.\"); :return true};\r\ + \n :if (\$DirVal->\"type\" != \"directory\") do={\$LogPrint error \$0 (\"\ + Directory '\" . \$DirName . \"' is not a directory.\"); :return false};\r\ + \n :onerror Err {/file/remove \$DirName} do={\$LogPrint error \$0 (\"Remo\ + ving directory '\" . \$DirName . \"' failed: \" . \$Err); :return false};\ + \r\ + \n :return true;\r\ + \n}\r\ + \n\r\ + \n:set RmFile do={\r\ + \n :local FileName [ :tostr \$1 ];\r\ + \n :global FileGet;\r\ + \n :global LogPrint;\r\ + \n \$LogPrint debug \$0 (\"Removing file: \". \$FileName);\r\ + \n :local FileVal [ \$FileGet \$FileName ];\r\ + \n :if (\$FileVal = false) do={\$LogPrint debug \$0 (\"... which does not\ + \_exist.\"); :return true}\r\ + \n :if (\$FileVal->\"type\" = \"directory\" || \$FileVal->\"type\" = \"di\ + sk\") do={\r\ + \n \$LogPrint error \$0 (\"File '\" . \$FileName . \"' is not a file.\"\ + ); :return false}\r\ + \n :onerror Err {\r\ + \n /file/remove \$FileName;\r\ + \n } do={\$LogPrint error \$0 (\"Removing file '\" . \$FileName . \"' fai\ + led: \" . \$Err); :return false}\r\ + \n :return true;\r\ + \n}\r\ + \n\r\ + \n:set MkDir do={\r\ + \n :local Path [ :tostr \$1 ];\r\ + \n :global CleanFilePath;\r\ + \n :global FileGet;\r\ + \n :global RmDir;\r\ + \n :global WaitForFile;\r\ + \n :global LogPrint;\r\ + \n :local MkTmpfs do={\r\ + \n :global WaitForFile;\r\ + \n :local TmpFs [ /disk/find where slot=tmpfs type=tmpfs ];\r\ + \n :if ([ :len \$TmpFs ] = 1) do={\r\ + \n :if ([ /disk/get \$TmpFs disabled ] = true) do={\r\ + \n \$LogPrint info \$0 (\"The tmpfs is disabled, enabling.\");\r\ + \n /disk/enable \$TmpFs;\r\ + \n }\r\ + \n :return true;\r\ + \n }\r\ + \n \$LogPrint info \$0 (\"Creating disk of type tmpfs.\");\r\ + \n \$RmDir \"tmpfs\";\r\ + \n :onerror Err {\r\ + \n /disk/add slot=tmpfs type=tmpfs tmpfs-max-size=([ /system/resource\ + /get total-memory ] / 3);\r\ + \n \$WaitForFile \"tmpfs\";\r\ + \n } do={\r\ + \n \$LogPrint warning \$0 (\"Creating disk of type tmpfs failed: \" .\ + \_\$Err);\r\ + \n :return false;\r\ + \n }\r\ + \n :return true;\r\ + \n }\r\ + \n :set Path [ \$CleanFilePath \$Path ];\r\ + \n :if (\$Path = \"\") do={\r\ + \n :return true;\r\ + \n }\r\ + \n \$LogPrint debug \$0 (\"Making directory: \" . \$Path);\r\ + \n :local PathVal [ \$FileGet \$Path ];\r\ + \n :if (\$PathVal->\"type\" = \"directory\") do={\r\ + \n \$LogPrint debug \$0 (\"... which already exists.\");\r\ + \n :return true;\r\ + \n }\r\ + \n :if ([ :pick \$Path 0 5 ] = \"tmpfs\") do={\r\ + \n :if ([ \$MkTmpfs ] = false) do={\r\ + \n :return false;\r\ + \n }\r\ + \n }\r\ + \n :onerror Err {\r\ + \n /file/add type=\"directory\" name=\$Path;\r\ + \n \$WaitForFile \$Path;\r\ + \n } do={\r\ + \n \$LogPrint warning \$0 (\"Making directory '\" . \$Path . \"' failed\ + : \" . \$Err);\r\ + \n :return false;\r\ + \n }\r\ + \n :return true;\r\ + \n}\r\ + \n\r\ + \n:set MAX do={:if (\$1 > \$2) do={:return \$1}\r\ + \n :return \$2;\r\ + \n}\r\ + \n:set MIN do={:if (\$1 < \$2) do={:return \$1}\r\ + \n :return \$2;\r\ + \n}\r\ + \n\r\ + \n:set CharacterMultiply do={\r\ + \n :local Str [ :tostr \$1 ];\r\ + \n :local Num [ :tonum \$2 ];\r\ + \n :if (\$Num = 0) do={:return \"\"}\r\ + \n :local Return \"\";\r\ + \n :for I from=1 to=\$Num do={:set Return (\$Return . \$Str)}\r\ + \n :return \$Return;\r\ + \n}\r\ + \n\r\ + \n:set CharacterReplace do={\r\ + \n :local String [ :tostr \$1 ];\r\ + \n :local ReplaceFrom [ :tostr \$2 ];\r\ + \n :local ReplaceWith [ :tostr \$3 ];\r\ + \n :local Return \"\";\r\ + \n :if (\$ReplaceFrom = \"\") do={:return \$String}\r\ + \n :while ([ :typeof [ :find \$String \$ReplaceFrom ] ] != \"nil\") do={\ + \r\ + \n :local Pos [ :find \$String \$ReplaceFrom ];\r\ + \n :set Return (\$Return . [ :pick \$String 0 \$Pos ] . \$ReplaceWith);\ + \r\ + \n :set String [ :pick \$String (\$Pos + [ :len \$ReplaceFrom ]) [ :len\ + \_\$String ] ];\r\ + \n }\r\ + \n :return (\$Return . \$String);\r\ + \n}\r\ + \n\r\ + \n:set CleanFilePath do={\r\ + \n :local Path [ :tostr \$1 ];\r\ + \n :global CharacterReplace;\r\ + \n :while (\$Path ~ \"//\") do={:set \$Path [ \$CharacterReplace \$Path \ + \"//\" \"/\" ]};\r\ + \n :if ([ :pick \$Path 0 ] = \"/\") do={:set Path [ :pick \$Path 1 [ :len\ + \_\$Path ] ]};\r\ + \n :if ([ :pick \$Path ([ :len \$Path ] - 1) ] = \"/\") do={:set Path [ :\ + pick \$Path 0 ([ :len \$Path ] - 1) ]};\r\ + \n :return \$Path;\r\ + \n}\r\ + \n\r\ + \n:set IfThenElse do={\r\ + \n :if ([ :tostr \$1 ] = \"true\" || [ :tobool \$1 ] = true) do={:return \ + \$2};\r\ + \n :return \$3;\r\ + \n}\r\ + \n\r\ + \n:set EitherOr do={\r\ + \n :global IfThenElse;\r\ + \n :if ([ :typeof \$1 ] = \"num\") do={:return [ \$IfThenElse (\$1 != 0) \ + \$1 \$2 ]}\r\ + \n :if ([ :typeof \$1 ] = \"time\") do={:return [ \$IfThenElse (\$1 > 0s)\ + \_\$1 \$2 ]}\r\ + \n# this works for boolean values, literal ones with parentheses\r\ + \n :return [ \$IfThenElse ([ :len [ :tostr \$1 ] ] > 0) \$1 \$2 ];\r\ + \n}\r\ + \n\r\ + \n:set ParseKeyValueStore do={\r\ + \n :local Source \$1;\r\ + \n :if ([ :pick \$Source 0 1 ] = \"{\") do={\r\ + \n :do {\r\ + \n :return [ :deserialize from=json \$Source ];\r\ + \n } on-error={ }\r\ + \n } \r\ + \n :if ([ :typeof \$Source ] != \"array\") do={:set Source [ :tostr \$1 ]\ + }\r\ + \n :local Result ({});\r\ + \n :foreach KeyValue in=[ :toarray \$Source ] do={\r\ + \n :if ([ :find \$KeyValue \"=\" ]) do={\r\ + \n :local Key [ :pick \$KeyValue 0 [ :find \$KeyValue \"=\" ] ];\r\ + \n :local Value [ :pick \$KeyValue ([ :find \$KeyValue \"=\" ] + 1) [\ + \_:len \$KeyValue ] ];\r\ + \n :if (\$Value=\"true\") do={:set Value true}\r\ + \n :if (\$Value=\"false\") do={:set Value false}\r\ + \n :set (\$Result->\$Key) \$Value;\r\ + \n } else={:set (\$Result->\$KeyValue) true}\r\ + \n }\r\ + \n :return \$Result;\r\ + \n}\r\ + \n:set RequiredRouterOS do={\r\ + \n :local Caller [ :tostr \$1 ];\r\ + \n :local Required [ :tostr \$2 ];\r\ + \n :local Warn [ :tostr \$3 ];\r\ + \n :global IfThenElse;\r\ + \n :global LogPrint;\r\ + \n :global VersionToNum;\r\ + \n :if (!(\$Required ~ \"^\\\\d+\\\\.\\\\d+((alpha|beta|rc|\\\\.)\\\\d+|)\ + \\\$\")) do={\r\ + \n \$LogPrint error \$0 (\"No valid RouterOS version: \" . \$Required);\ + \r\ + \n :return false;\r\ + \n }\r\ + \n :if ([ \$VersionToNum \$Required ] > [ \$VersionToNum [ /system/packag\ + e/update/get installed-version ] ]) do={\r\ + \n :if (\$Warn = \"true\") do={\r\ + \n \$LogPrint warning \$0 (\"This \" . [ \$IfThenElse ([ :pick \$Call\ + er 0 ] = (\"\\\$\")) \"function\" \"script\" ] . \\\r\ + \n \" '\" . \$Caller . \"' (at least specific functionality) requir\ + es RouterOS \" . \$Required . \". Please update!\");\r\ + \n }\r\ + \n :return false;\r\ + \n }\r\ + \n :return true;\r\ + \n}\r\ + \n:set VersionToNum do={\r\ + \n :local Input [ :tostr \$1 ];\r\ + \n :local Multi 0x1000000;\r\ + \n :local Return 0;\r\ + \n :global CharacterReplace;\r\ + \n :set Input [ \$CharacterReplace \$Input \".\" \",\" ];\r\ + \n :foreach I in={ \"zero\"; \"alpha\"; \"beta\"; \"rc\" } do={\r\ + \n :set Input [ \$CharacterReplace \$Input \$I (\",\" . \$I . \",\") ];\ + \r\ + \n }\r\ + \n :foreach Value in=([ :toarray \$Input ], 0) do={\r\ + \n :local Num [ :tonum \$Value ];\r\ + \n :if (\$Multi = 0x100) do={\r\ + \n :if ([ :typeof \$Num ] = \"num\") do={\r\ + \n :set Return (\$Return + 0xff00);\r\ + \n :set Multi (\$Multi / 0x100);\r\ + \n } else={\r\ + \n :if (\$Value = \"zero\") do={ }\r\ + \n :if (\$Value = \"alpha\") do={ :set Return (\$Return + 0x3f00); \ + }\r\ + \n :if (\$Value = \"beta\") do={ :set Return (\$Return + 0x5f00); }\ + \r\ + \n :if (\$Value = \"rc\") do={ :set Return (\$Return + 0x7f00); }\r\ + \n }\r\ + \n }\r\ + \n :if ([ :typeof \$Num ] = \"num\") do={ :set Return (\$Return + (\$Va\ + lue * \$Multi)); }\r\ + \n :set Multi (\$Multi / 0x100);\r\ + \n }\r\ + \n :return \$Return;\r\ + \n}\r\ + \n:set ScriptLock do={\r\ + \n :local Script [ :tostr \$1 ];\r\ + \n :local WaitMax [ :totime \$2 ];\r\ + \n :global GetRandom20CharAlNum;\r\ + \n :global IfThenElse;\r\ + \n :global LogPrint;\r\ + \n :global ScriptLockOrder;\r\ + \n :if ([ :typeof \$ScriptLockOrder ] = \"nothing\") do={\r\ + \n :set ScriptLockOrder ({});\r\ + \n }\r\ + \n :if ([ :typeof (\$ScriptLockOrder->\$Script) ] = \"nothing\") do={\r\ + \n :set (\$ScriptLockOrder->\$Script) ({});\r\ + \n }\r\ + \n :local JobCount do={\r\ + \n :local Script [ :tostr \$1 ];\r\ + \n :return [ :len [ /system/script/job/find where script=\$Script ] ];\ + \r\ + \n }\r\ + \n :local TicketCount do={\r\ + \n :local Script [ :tostr \$1 ];\r\ + \n :global ScriptLockOrder;\r\ + \n :local Count 0;\r\ + \n :foreach Ticket in=(\$ScriptLockOrder->\$Script) do={\r\ + \n :if ([ :typeof \$Ticket ] != \"nothing\") do={:set Count (\$Count \ + + 1)}\r\ + \n }\r\ + \n :return \$Count;\r\ + \n }\r\ + \n :local IsFirstTicket do={\r\ + \n :local Script [ :tostr \$1 ];\r\ + \n :local Check [ :tostr \$2 ];\r\ + \n :global ScriptLockOrder;\r\ + \n :foreach Ticket in=(\$ScriptLockOrder->\$Script) do={\r\ + \n :if (\$Ticket = \$Check) do={:return true}\r\ + \n :if ([ :typeof \$Ticket ] != \"nothing\" && \$Ticket != \$Check) d\ + o={:return false}\r\ + \n }\r\ + \n :return false;\r\ + \n }\r\ + \n :local AddTicket do={\r\ + \n :local Script [ :tostr \$1 ];\r\ + \n :local Add [ :tostr \$2 ];\r\ + \n :global ScriptLockOrder;\r\ + \n :while (true) do={\r\ + \n :local Pos [ :len (\$ScriptLockOrder->\$Script) ];\r\ + \n :set (\$ScriptLockOrder->\$Script->\$Pos) \$Add;\r\ + \n :delay 10ms;\r\ + \n :if ((\$ScriptLockOrder->\$Script->\$Pos) = \$Add) do={:return tru\ + e}\r\ + \n }\r\ + \n }\r\ + \n :local RemoveTicket do={\r\ + \n :local Script [ :tostr \$1 ];\r\ + \n :local Remove [ :tostr \$2 ];\r\ + \n :global ScriptLockOrder;\r\ + \n :foreach Id,Ticket in=(\$ScriptLockOrder->\$Script) do={\r\ + \n :while ((\$ScriptLockOrder->\$Script->\$Id) = \$Remove) do={\r\ + \n :set (\$ScriptLockOrder->\$Script->\$Id);\r\ + \n :delay 10ms;\r\ + \n }\r\ + \n }\r\ + \n }\r\ + \n :local CleanupTickets do={\r\ + \n :local Script [ :tostr \$1 ];\r\ + \n :global ScriptLockOrder;\r\ + \n :foreach Ticket in=(\$ScriptLockOrder->\$Script) do={\r\ + \n :if ([ :typeof \$Ticket ] != \"nothing\") do={:return false}\r\ + \n }\r\ + \n :set (\$ScriptLockOrder->\$Script) ({});\r\ + \n }\r\ + \n :if ([ :typeof \$WaitMax ] = \"nil\" ) do={:set WaitMax 0s}\r\ + \n :if ([ :len [ /system/script/find where name=\$Script ] ] = 0) do={\r\ + \n \$LogPrint error \$0 (\"A script named '\" . \$Script . \"' does not\ + \_exist!\");\r\ + \n :error false;\r\ + \n }\r\ + \n :if ([ \$JobCount \$Script ] = 0) do={\r\ + \n \$LogPrint error \$0 (\"No script '\" . \$Script . \"' is running!\"\ + );\r\ + \n :error false;\r\ + \n }\r\ + \n :if ([ \$TicketCount \$Script ] >= [ \$JobCount \$Script ]) do={\r\ + \n \$LogPrint error \$0 (\"More tickets than running scripts '\" . \$Sc\ + ript . \"', resetting!\");\r\ + \n :set (\$ScriptLockOrder->\$Script) ({});\r\ + \n /system/script/job/remove [ find where script=\$Script ];\r\ + \n }\r\ + \n :local MyTicket [ \$GetRandom20CharAlNum 6 ];\r\ + \n \$AddTicket \$Script \$MyTicket;\r\ + \n :local WaitInterval (\$WaitMax / 20);\r\ + \n :local WaitTime \$WaitMax;\r\ + \n :while (\$WaitTime > 0 && \\\r\ + \n ([ \$IsFirstTicket \$Script \$MyTicket ] = false || \\\r\ + \n [ \$TicketCount \$Script ] < [ \$JobCount \$Script ])) do={\r\ + \n :set WaitTime (\$WaitTime - \$WaitInterval);\r\ + \n :delay \$WaitInterval;\r\ + \n }\r\ + \n :if ([ \$IsFirstTicket \$Script \$MyTicket ] = true && \\\r\ + \n [ \$TicketCount \$Script ] = [ \$JobCount \$Script ]) do={\r\ + \n \$RemoveTicket \$Script \$MyTicket;\r\ + \n \$CleanupTickets \$Script;\r\ + \n :return true;\r\ + \n }\r\ + \n \$RemoveTicket \$Script \$MyTicket;\r\ + \n \$LogPrint debug \$0 (\"Script '\" . \$Script . \"' started more than \ + once\" . \\\r\ + \n [ \$IfThenElse (\$WaitTime < \$WaitMax) \" and timed out waiting for\ + \_lock\" \"\" ] . \"...\");\r\ + \n :return false;\r\ + \n}\r\ + \n:set SendNotification do={ :onerror Err {\r\ + \n :global SendNotification2;\r\ + \n \$SendNotification2 ({ origin=\$0; subject=\$1; message=\$2; link=\$3;\ + \_silent=\$4 });\r\ + \n} do={:global ExitOnError; \$ExitOnError \$0 \$Err}\r\ + \n}\r\ + \n:set SendNotification2 do={\r\ + \n :local Notification \$1;\r\ + \n :global NotificationFunctions;\r\ + \n :foreach FunctionName,Discard in=\$NotificationFunctions do={\r\ + \n (\$NotificationFunctions->\$FunctionName) (\"\\\$NotificationFunctio\ + ns->\\\"\" . \$FunctionName . \"\\\"\") \$Notification;\r\ + \n }\r\ + \n}\r\ + \n:set SymbolByUnicodeName do={\r\ + \n :local Name [ :tostr \$1 ];\r\ + \n :global EitherOr;\r\ + \n :global LogPrint;\r\ + \n :global SymbolsExtra;\r\ + \n :local Symbols ({\r\ + \n \"abacus\"=\"\\F0\\9F\\A7\\AE\";\r\ + \n \"alarm-clock\"=\"\\E2\\8F\\B0\";\r\ + \n \"arrow-down\"=\"\\E2\\AC\\87\";\r\ + \n \"arrow-up\"=\"\\E2\\AC\\86\";\r\ + \n \"calendar\"=\"\\F0\\9F\\93\\85\";\r\ + \n \"card-file-box\"=\"\\F0\\9F\\97\\83\";\r\ + \n \"chart-decreasing\"=\"\\F0\\9F\\93\\89\";\r\ + \n \"chart-increasing\"=\"\\F0\\9F\\93\\88\";\r\ + \n \"cloud\"=\"\\E2\\98\\81\";\r\ + \n \"cross-mark\"=\"\\E2\\9D\\8C\";\r\ + \n \"earth\"=\"\\F0\\9F\\8C\\8D\";\r\ + \n \"fire\"=\"\\F0\\9F\\94\\A5\";\r\ + \n \"floppy-disk\"=\"\\F0\\9F\\92\\BE\";\r\ + \n \"gear\"=\"\\E2\\9A\\99\";\r\ + \n \"heart\"=\"\\E2\\99\\A5\";\r\ + \n \"high-voltage-sign\"=\"\\E2\\9A\\A1\";\r\ + \n \"incoming-envelope\"=\"\\F0\\9F\\93\\A8\";\r\ + \n \"information\"=\"\\E2\\84\\B9\";\r\ + \n \"large-orange-circle\"=\"\\F0\\9F\\9F\\A0\";\r\ + \n \"large-red-circle\"=\"\\F0\\9F\\94\\B4\";\r\ + \n \"link\"=\"\\F0\\9F\\94\\97\";\r\ + \n \"lock-with-ink-pen\"=\"\\F0\\9F\\94\\8F\";\r\ + \n \"memo\"=\"\\F0\\9F\\93\\9D\";\r\ + \n \"mobile-phone\"=\"\\F0\\9F\\93\\B1\";\r\ + \n \"pushpin\"=\"\\F0\\9F\\93\\8C\";\r\ + \n \"scissors\"=\"\\E2\\9C\\82\";\r\ + \n \"scroll\"=\"\\F0\\9F\\93\\9C\";\r\ + \n \"smiley-partying-face\"=\"\\F0\\9F\\A5\\B3\";\r\ + \n \"smiley-smiling-face\"=\"\\E2\\98\\BA\";\r\ + \n \"smiley-winking-face-with-tongue\"=\"\\F0\\9F\\98\\9C\";\r\ + \n \"sparkles\"=\"\\E2\\9C\\A8\";\r\ + \n \"speech-balloon\"=\"\\F0\\9F\\92\\AC\";\r\ + \n \"star\"=\"\\E2\\AD\\90\";\r\ + \n \"warning-sign\"=\"\\E2\\9A\\A0\";\r\ + \n \"white-heavy-check-mark\"=\"\\E2\\9C\\85\"\r\ + \n }, \$SymbolsExtra);\r\ + \n :local Magic [ :pick [ /system/clock/get date ] 4 10 ];\r\ + \n :local Special {\r\ + \n \"information-04-01\"=\"\\F0\\9F\\9A\\BB\";\r\ + \n \"large-orange-circle-04-01\"=\"\\F0\\9F\\8D\\8A\";\r\ + \n \"large-orange-circle-10-31\"=\"\\F0\\9F\\8E\\83\";\r\ + \n \"large-red-circle-04-01\"=\"\\F0\\9F\\8D\\92\" };\r\ + \n :if ([ :len (\$Symbols->\$Name) ] = 0) do={\r\ + \n \$LogPrint warning \$0 (\"No symbol available for name '\" . \$Name \ + . \"'!\");\r\ + \n :return \"\";\r\ + \n }\r\ + \n :return ([ \$EitherOr (\$Special->(\$Name . \$Magic)) (\$Symbols->\$Na\ + me) ] . \"\\EF\\B8\\8F\");\r\ + \n}\r\ + \n:set SymbolForNotification do={\r\ + \n :global NotificationsWithSymbols;\r\ + \n :global SymbolByUnicodeName;\r\ + \n :global IfThenElse;\r\ + \n :if (\$NotificationsWithSymbols != true) do={:return [ \$IfThenElse ([\ + \_:len \$2 ] > 0) ([ :tostr \$2 ] . \" \") \"\" ]}\r\ + \n :local Return \"\";\r\ + \n :foreach Symbol in=[ :toarray \$1 ] do={:set Return (\$Return . [ \$Sy\ + mbolByUnicodeName \$Symbol ])}\r\ + \n :return (\$Return . \" \");\r\ + \n}\r\ + \n:set Unix2Dos do={:return [ :tocrlf [ :tostr \$1 ] ]}\r\ + \n:set UrlEncode do={\r\ + \n :local Input [ :tostr \$1 ];\r\ + \n :if ([ :len \$Input ] = 0) do={:return \"\"}\r\ + \n :local Return \"\";\r\ + \n :local Chars (\"\\n\\r !\\\"#\\\$%&'()*+,:;<=>\?@[\\\\]^`{|}~\");\r\ + \n :local Subs { \"%0A\"; \"%0D\"; \"%20\"; \"%21\"; \"%22\"; \"%23\"; \"\ + %24\"; \"%25\"; \"%26\"; \"%27\";\r\ + \n \"%28\"; \"%29\"; \"%2A\"; \"%2B\"; \"%2C\"; \"%3A\"; \"%3B\"; \ + \"%3C\"; \"%3D\"; \"%3E\"; \"%3F\";\r\ + \n \"%40\"; \"%5B\"; \"%5C\"; \"%5D\"; \"%5E\"; \"%60\"; \"%7B\"; \ + \"%7C\"; \"%7D\"; \"%7E\" };\r\ + \n :for I from=0 to=([ :len \$Input ] - 1) do={\r\ + \n :local Char [ :pick \$Input \$I ];\r\ + \n :local Replace [ :find \$Chars \$Char ];\r\ + \n :if ([ :typeof \$Replace ] = \"num\") do={:set Char (\$Subs->\$Repla\ + ce)}\r\ + \n :set Return (\$Return . \$Char);\r\ + \n }\r\ + \n :return \$Return;\r\ + \n}\r\ + \n:set ValidateSyntax do={\r\ + \n :local Code [ :tostr \$1 ];\r\ + \n :global LogPrint;\r\ + \n :onerror Err {\r\ + \n [ :parse (\":local Validate do={\\n\" . \$Code . \"\\n}\") ];\r\ + \n } do={\r\ + \n \$LogPrint debug \$0 (\"Valdation failed: \" . \$Err);\r\ + \n :return false;\r\ + \n }\r\ + \n :return true;\r\ + \n}\r\ + \n:set IsDNSResolving do={\r\ + \n :do {:resolve \"api.telegram.org\"} on-error={:return false}\r\ + \n :return true;\r\ + \n}\r\ + \n:set IsFullyConnected do={\r\ + \n :global IsDNSResolving;\r\ + \n :global IsTimeSync;\r\ + \n :if ([ \$IsDNSResolving ] = false) do={:return false};\r\ + \n :if ([ \$IsTimeSync ] = false) do={:return false};\r\ + \n :return true;\r\ + \n}\r\ + \n:set IsTimeSync do={\r\ + \n :global IsTimeSyncCached;\r\ + \n :global IsTimeSyncResetNtp;\r\ + \n :if (\$IsTimeSyncCached = true) do={:return true}\r\ + \n :if ([ /system/ntp/client/get enabled ] = true) do={\r\ + \n :if ([ /system/ntp/client/get status ] = \"synchronized\") do={\r\ + \n :set IsTimeSyncCached true;\r\ + \n :return true;\r\ + \n }\r\ + \n :local Uptime [ /system/resource/get uptime ];\r\ + \n :if ([ :typeof \$IsTimeSyncResetNtp ] = \"nothing\") do={\r\ + \n :set IsTimeSyncResetNtp \$Uptime;\r\ + \n }\r\ + \n :if (\$Uptime - \$IsTimeSyncResetNtp < 3m) do={:return false}\r\ + \n :log warning \"\$0 The ntp client is configured, but did not sync.\"\ + ;\r\ + \n :set IsTimeSyncResetNtp \$Uptime;\r\ + \n /system/ntp/client/set enabled=no;\r\ + \n :delay 20ms;\r\ + \n /system/ntp/client/set enabled=yes;\r\ + \n :return false;\r\ + \n }\r\ + \n :if ([ /system/license/get ]->\"level\" = \"free\" || \\\r\ + \n [ /system/resource/get ]->\"board-name\" = \"x86\") do={\r\ + \n :log debug \"\$0 No ntp client configured, relying on RTC for CHR fr\ + ee license and x86.\";\r\ + \n :return true;\r\ + \n }\r\ + \n :if ([ /ip/cloud/get update-time ] = true) do={\r\ + \n :if ([ :typeof [ /ip/cloud/get public-address ] ] = \"ip\") do={\r\ + \n :set IsTimeSyncCached true;\r\ + \n :return true;\r\ + \n }\r\ + \n :return false;\r\ + \n }\r\ + \n :log debug \"\$0 No time source configured! Returning gracefully...\";\ + \r\ + \n :return true;\r\ + \n}\r\ + \n\r\ + \n# read parts of a large file\r\ + \n:set FetchLargeFiles do={\r\ + \n :local ScriptName [:tostr \$1];\r\ + \n :local fetchUrl [:tostr \$2];\r\ + \n :local CheckCert [:tostr \$3];\r\ + \n :local fetchMode [:tostr \$4];\r\ + \n :local fetchMethod [:tostr \$5];\r\ + \n :local FetchString \"undefined\";\r\ + \n \r\ + \n :global CleanName;\r\ + \n :global FetchUserAgentStr;\r\ + \n :global GetRandom20CharAlNum;\r\ + \n :global IfThenElse;\r\ + \n :global LogPrint;\r\ + \n :global MkDir;\r\ + \n :global RmDir;\r\ + \n :global RmFile;\r\ + \n :global WaitForFile;\r\ + \n\r\ + \n :set CheckCert [ \$IfThenElse (\$CheckCert = \"false\") \"no\" \"yes-w\ + ithout-crl\" ];\r\ + \n #:set fetchMode [ \$IfThenElse (\$fetchMode != \"false\") [:tostr (\"m\ + ode=\" . \$fetchMode)] ];\r\ + \n #:set fetchMethod [\$IfThenElse (\$fetchMethod != \"false\") [:tostr (\ + \"http-method=\\\"\" . \$fetchMethod . \"\\\"\") ]];\r\ + \n \r\ + \n :local DirName (\"tmpfs/\" . [ \$CleanName \$ScriptName ]);\r\ + \n :if ([ \$MkDir \$DirName ] = false) do={\r\ + \n \$LogPrint error \$0 (\"Failed creating directory!\");\r\ + \n :return false;\r\ + \n }\r\ + \n :local FileName (\$DirName . \"/\" . [ \$CleanName \$0 ] . \"-\" . [ \ + \$GetRandom20CharAlNum ]);\r\ + \n #/tool/fetch check-certificate=\$CheckCert \$Url dst-path=\$FileName h\ + ttp-header-field=({ [ \$FetchUserAgentStr \$ScriptName ] }) as-value;\r\ + \n #:log warning (\"\\\$fUrl =\" . \$2 . ({[ \$fMode ]}));\r\ + \n :onerror Err {\r\ + \n :set FetchString (\"/tool/fetch \" . \\\r\ + \n [\$IfThenElse ([\$fetchMethod] != \"false\") (\"http-method=\\\"\"\ + \_. \$fetchMethod . \"\\\" \")] . \\\r\ + \n \"check-certificate=\" . \$CheckCert . \" url=(\\\"\" . \$fetchUrl\ + \_. \"\\\") \" . \\\r\ + \n [\$IfThenElse ([\$fetchMode] != \"false\") (\"mode=\" . \$fetchMod\ + e . \" \")] . \\\r\ + \n http-header-field=({ [ \$FetchUserAgentStr \$ScriptName ] }) as-va\ + lue);\r\ + \n :log warning (\"\\\$FetchSring = \" . \$FetchString);\r\ + \n :put [\$FetchString];\r\ + \n #:put [/tool/fetch \$fetchMode check-certificate=\$CheckCert url=(\$\ + fetchUrl) dst-path=(\$FileName) http-header-field=({ [ \$FetchUserAgentStr\ + \_\$ScriptName ] }) as-value];\r\ + \n } do={\r\ + \n :if ([ \$WaitForFile \$FileName 500ms ] = true) do={\r\ + \n \$RmFile \$FileName;\r\ + \n }\r\ + \n \$LogPrint debug \$0 (\"Failed downloading from \" . \$fetchUrl . \"\ + \_- \" . \$Err);\r\ + \n \$RmDir \$DirName;\r\ + \n :return false;\r\ + \n }\r\ + \n :if ([ \$WaitForFile \$FileName 5s ] = false) do={\r\ + \n \$LogPrint debug \$0 (\"The file downloaded from \" . \$fetchUrl . \ + \" did not show up.\");\r\ + \n :return false;\r\ + \n }\r\ + \n :local FileSize [ /file/get \$FileName size ];\r\ + \n :local Return \"\";\r\ + \n :local VarSize 0;\r\ + \n :while (\$VarSize != \$FileSize) do={\r\ + \n :set Return (\$Return . ([ /file/read offset=\$VarSize chunk-size=32\ + 768 file=\$FileName as-value ]->\"data\"));\r\ + \n :set FileSize [ /file/get \$FileName size ];\r\ + \n :set VarSize [ :len \$Return ];\r\ + \n :if (\$VarSize > \$FileSize) do={\r\ + \n :delay 100ms;\r\ + \n }\r\ + \n }\r\ + \n \$RmDir \$DirName;\r\ + \n :return \$Return;\r\ + \n}\r\ + \n\r\ + \n:set ScriptInstallUpdate do={ :onerror Err {\r\ + \n :local Scripts [ :toarray \$1 ];\r\ + \n :local NewComment [ :tostr \$2 ];\r\ + \n :global InitSetup;\r\ + \n\r\ + \n :global CommitId;\r\ + \n :global ScriptUpdatesCRLF;\r\ + \n :global GlobalConfVersion;\r\ + \n :global Identity;\r\ + \n :global CertificateAvailable;\r\ + \n :global CheckSumsVerify;\r\ + \n :global GlobalScriptsUrl;\r\ + \n :global SumsDirAndFileName;\r\ + \n :global GlobalScriptsUrlSuffix;\r\ + \n :global EitherOr;\r\ + \n :global FetchUserAgentStr;\r\ + \n :global Grep;\r\ + \n :global IfThenElse;\r\ + \n :global LogPrint;\r\ + \n :global ParseKeyValueStore;\r\ + \n :global RequiredRouterOS;\r\ + \n :global SendNotification2;\r\ + \n :global SymbolForNotification;\r\ + \n :global ValidateSyntax;\r\ + \n :global CommentsInScripts;\r\ + \n\r\ + \n :if ([ \$CertificateAvailable \"Root YE\" \"fetch\" ] = false) do={\r\ + \n \$LogPrint warning \$0 (\"Downloading certificate failed, trying wit\ + hout.\");\r\ + \n }\r\ + \n\r\ + \n :foreach Script in=\$Scripts do={\r\ + \n :if ([ :len [ /system/script/find where name=\$Script ] ] = 0) do={\ + \r\ + \n \$LogPrint info \$0 (\"Adding new script: \" . \$Script);\r\ + \n /system/script/add name=\$Script owner=\$Script source=\"#!rsc by \ + Vados\\n\" comment=\$NewComment;\r\ + \n }\r\ + \n }\r\ + \n\r\ + \n :local CommitIdBefore \$CommitId;\r\ + \n :local GlobalConfVersionBefore \$GlobalConfVersion;\r\ + \n :local ReloadGlobal false;\r\ + \n :local DeviceMode [ /system/device-mode/get ];\r\ + \n\r\ + \n :if (\$CheckSumsVerify = true) do={\r\ + \n :local CheckSums ({});\r\ + \n :do {\r\ + \n :local Url (\$GlobalScriptsUrl . \$SumsDirAndFileName . \$GlobalScr\ + iptsUrlSuffix);\r\ + \n \$LogPrint debug \$0 (\"Fetching checksums from url: \" . \$Url);\ + \r\ + \n :set CheckSums [ :deserialize from=json ([ /tool/fetch check-certi\ + ficate=yes-without-crl \\\r\ + \n http-header-field=({ [ \$FetchUserAgentStr \$0 ] }) \$Url output\ + =user as-value ]->\"data\") ];\r\ + \n } on-error={ \$LogPrint warning \$0 (\"Err = \" . \$Err); }\r\ + \n }\r\ + \n\r\ + \n :foreach Script in=[ /system/script/find where source~\"^#!rsc by Vado\ + s\" ] do={\r\ + \n :local ScriptVal [ /system/script/get \$Script ];\r\ + \n :local ScriptInfo [ \$ParseKeyValueStore (\$ScriptVal->\"comment\") \ + ];\r\ + \n :local SourceNew;\r\ + \n\r\ + \n :foreach Scheduler in=[ /system/scheduler/find where on-event~(\"\\\ + \\b\" . \$ScriptVal->\"name\" . \"\\\\b\") ] do={\r\ + \n :local SchedulerVal [ /system/scheduler/get \$Scheduler ];\r\ + \n :if (\$ScriptVal->\"policy\" != \$SchedulerVal->\"policy\") do={\r\ + \n \$LogPrint warning \$0 (\"Policies differ for script '\" . \$Scr\ + iptVal->\"name\" . \"' and its scheduler '\" . \$SchedulerVal->\"name\" . \ + \"'!\");\r\ + \n }\r\ + \n }\r\ + \n :do {\r\ + \n :if (\$ScriptInfo->\"ignore\" = true) do={\r\ + \n \$LogPrint debug \$0 (\"Ignoring script '\" . \$ScriptVal->\"nam\ + e\" . \"', as requested.\");\r\ + \n :error true;\r\ + \n }\r\ + \n :if (\$CheckSumsVerify = true) do={\r\ + \n :local CheckSum (\$CheckSums->(\$ScriptVal->\"name\"));\r\ + \n :if ([ :len (\$ScriptInfo->\"base-url\") ] = 0 && [ :len (\$Scri\ + ptInfo->\"url-suffix\") ] = 0 && \\\r\ + \n [ :convert transform=md5 to=hex [ :tolf (\$ScriptVal->\"sou\ + rce\") ] ] = \$CheckSum) do={\r\ + \n \$LogPrint debug \$0 (\"Checksum for script '\" . \$ScriptVal-\ + >\"name\" . \"' matches, ignoring.\");\r\ + \n :error true;\r\ + \n }\r\ + \n }\r\ + \n :if ([ :len (\$ScriptInfo->\"certificate\") ] > 0) do={\r\ + \n :if ([ \$CertificateAvailable (\$ScriptInfo->\"certificate\") \"\ + fetch\" ] = false) do={\r\ + \n \$LogPrint warning \$0 (\"Downloading certificate failed, tryi\ + ng without.\");\r\ + \n }\r\ + \n }\r\ + \n :onerror Err {\r\ + \n :local BaseUrl [ \$EitherOr (\$ScriptInfo->\"base-url\") \$Globa\ + lScriptsUrl ];\r\ + \n :local UrlSuffix [ \$EitherOr (\$ScriptInfo->\"url-suffix\") \$G\ + lobalScriptsUrlSuffix ];\r\ + \n :local Url (\$BaseUrl . \$ScriptVal->\"name\" . \".rsc\" . \$Url\ + Suffix);\r\ + \n \$LogPrint warning \$0 (\"Fetching script '\" . (\$ScriptVal->\"\ + name\") . \"' from url: \" . \$Url);\r\ + \n :local Result [ /tool/fetch check-certificate=yes-without-crl \\\ + \r\ + \n http-header-field=({ [ \$FetchUserAgentStr \$0 ] }) \$Url outp\ + ut=user as-value ];\r\ + \n :if (\$Result->\"status\" = \"finished\") do={\r\ + \n :set SourceNew [ :tolf (\$Result->\"data\") ];\r\ + \n } \r\ + \n } do={\r\ + \n \$LogPrint warning \$0 (\"Failed fetching script '\" . \$ScriptV\ + al->\"name\" . \"': \" . \$Err);\r\ + \n :if (\$Err != \"Fetch failed with status 404\") do={\r\ + \n :error false;\r\ + \n }\r\ + \n :if (\$ScriptVal->\"source\" = \"#!rsc by Vados\") do={\r\ + \n \$LogPrint warning \$0 (\"Removing dummy. Typo on installation\ + \?\");\r\ + \n /system/script/remove \$Script;\r\ + \n :error false;\r\ + \n }\r\ + \n :if (\$CheckSumsVerify = true) do={\r\ + \n :if ([ :len (\$ScriptInfo->\"base-url\") ] = 0 && [ :len (\$Sc\ + riptInfo->\"url-suffix\") ] = 0 && \\\r\ + \n [ :len \$CheckSum ] = 0) do={\r\ + \n \$LogPrint warning \$0 (\"Added the script manually\? Skip u\ + pdates with 'ignore=true' in comment.\");\r\ + \n }\r\ + \n }\r\ + \n :error false;\r\ + \n }\r\ + \n\r\ + \n :if ([ :len \$SourceNew ] = 0) do={\r\ + \n \$LogPrint debug \$0 (\"No update for script '\" . (\$ScriptVal-\ + >\"name\") . \"'.\");\r\ + \n :error false;\r\ + \n }\r\ + \n\r\ + \n :local SourceCRLF [ :tocrlf \$SourceNew ];\r\ + \n :if (\$InitSetup != true && ((\$ScriptVal->\"name\") != \"AM-Globa\ + lConfig\" || (\$ScriptVal->\"name\") != \"AM-GlobalFunc\")) do={\r\ + \n :if (\$SourceNew = (\$ScriptVal->\"source\") || \$SourceCRLF = (\ + \$ScriptVal->\"source\")) do={\r\ + \n \$LogPrint debug \$0 (\"Script '\" . (\$ScriptVal->\"name\") \ + . \"' source did not change. End of lines set to CRLF.\");\r\ + \n if (\$ScriptUpdatesCRLF = false) do={\r\ + \n :put [ :tolf \$SourceNew ];\r\ + \n \$LogPrint debug \$0 (\"Script '\" . (\$ScriptVal->\"name\"\ + ) . \"' source update end of lines to LF.\");\r\ + \n }\r\ + \n :error false;\r\ + \n }\r\ + \n }\r\ + \n\r\ + \n :if ([ :pick \$SourceNew 0 14 ] != \"#!rsc by Vados\") do={\r\ + \n \$LogPrint warning \$0 (\"Looks like new script '\" . \$ScriptVa\ + l->\"name\" . \"' is not valid (missing shebang = '\$shebang') Ignoring!\"\ + );\r\ + \n :error false;\r\ + \n }\r\ + \n\r\ + \n :if (\$CommentsInScripts = true) do={\r\ + \n :local CommentLine [ \$Grep \$SourceNew (\"\\23 Script comment:\ + \_\") ];\r\ + \n :if ([ :len \$CommentLine ] = 0) do={\r\ + \n \$LogPrint debug \$0 (\"The search in new script '\" . (\$Scr\ + iptVal->\"name\") . \"' for comment in script body, is not found result Ig\ + noring!\");\r\ + \n :error false;\r\ + \n } else={\r\ + \n :if ([ :len (\$ScriptVal->\"comment\")] = 0 || [ :len (\$Scri\ + ptVal->\"comment\")] != [ :pick \$CommentLine ([ :find \$CommentLine \":\"\ + ] + 2) [ :len \$CommentLine] ]) do={\r\ + \n \$LogPrint debug \$0 (\"Exsiting comment for script '\" . (\ + \$ScriptVal->\"name\") . \"' is '\" . (\$ScriptVal->\"comment\") . \"'.\")\ + ;\r\ + \n :set (\$ScriptVal->\"comment\") [ :pick \$CommentLine ([ :f\ + ind \$CommentLine \":\"] + 2) [ :len \$CommentLine] ];\r\ + \n \$LogPrint debug \$0 (\"New comment (\" . (\$ScriptVal->\"c\ + omment\") . \") for script '\" . (\$ScriptVal->\"name\") . \"' has been ad\ + ded!\");\r\ + \n } else={\r\ + \n \$LogPrint debug \$0 (\"Comment for script '\" . (\$ScriptV\ + al->\"name\") . \"' did not change.\");\r\ + \n :error false;\r\ + \n }\r\ + \n } \r\ + \n }\r\ + \n\r\ + \n :local RequiredROS ([ \$ParseKeyValueStore [ \$Grep \$SourceNew (\ + \"\\23 requires RouterOS, \") ] ]->version);\r\ + \n :if ([ \$RequiredRouterOS \$0 [ \$EitherOr \$RequiredROS \"0.0\" ]\ + \_false ] = false) do={\r\ + \n \$LogPrint warning \$0 (\"The script '\" . (\$ScriptVal->\"name\ + \") . \"' requires RouterOS \" . \\\r\ + \n \$RequiredROS . \", which is not met by your installation. I\ + gnoring!\");\r\ + \n :error false;\r\ + \n }\r\ + \n :local RequiredDM [ \$ParseKeyValueStore [ \$Grep \$SourceNew (\"\ + \\23 requires device-mode, \") ] ];\r\ + \n :local MissingDM ({});\r\ + \n :foreach Feature,Value in=\$RequiredDM do={\r\ + \n :if ([ :typeof (\$DeviceMode->\$Feature) ] = \"bool\" && (\$Devi\ + ceMode->\$Feature) = false) do={\r\ + \n :set MissingDM (\$MissingDM, \$Feature);\r\ + \n }\r\ + \n }\r\ + \n :if ([ :len \$MissingDM ] > 0) do={\r\ + \n \$LogPrint warning \$0 (\"The script '\" . (\$ScriptVal->\"name\ + \") . \"' requires disabled \" . \\\r\ + \n \"device-mode features (\" . [ :tostr \$MissingDM ] . \"). I\ + gnoring!\");\r\ + \n :error false;\r\ + \n }\r\ + \n\r\ + \n :if ([ \$ValidateSyntax \$SourceNew ] = false) do={\r\ + \n \$LogPrint warning \$0 (\"Syntax validation for script '\" . (\$\ + ScriptVal->\"name\") . \"' failed! Ignoring!\");\r\ + \n :error false;\r\ + \n }\r\ + \n \r\ + \n :log info (\"Updating script: \" . (\$ScriptVal->\"name\") . \" Sc\ + ript comment: \" . (\$ScriptVal->\"comment\"));\r\ + \n\r\ + \n /system/script/set owner=(\$ScriptVal->\"name\") comment=(\$Script\ + Val->\"comment\") \\\r\ + \n source=[ \$IfThenElse (\$ScriptUpdatesCRLF = true) \$SourceCRL\ + F \$SourceNew ] \$Script;\r\ + \n :if (\$ScriptVal->\"name\" = \"AM-GlobalConfig\" || \\\r\ + \n \$ScriptVal->\"name\" = \"AM-GlobalFunc\" || \\\r\ + \n \$ScriptVal->\"name\" ~ (\"^(AM-GlobalFunc\\\\.d|mod)/.\")) d\ + o={\r\ + \n :set ReloadGlobal true;\r\ + \n }\r\ + \n } on-error={ }\r\ + \n }\r\ + \n :if (\$ReloadGlobal = true) do={\r\ + \n \$LogPrint info \$0 (\"Reloading global configuration and functions.\ + \");\r\ + \n :onerror Err {\r\ + \n :global InitSetup (a);\r\ + \n /system/script {run AM-GlobalConfig; run AM-GlobalFunc;};\r\ + \n } do={\$LogPrint error \$0 (\"Reloading global configuration and fun\ + ctions failed! \" . \$Err)}\r\ + \n }\r\ + \n :if (\$GlobalConfVersionBefore > \$GlobalConfVersion) do={\r\ + \n \$LogPrint warning \$0 (\"The configuration version decreased from \ + \" . \\\r\ + \n \$GlobalConfVersionBefore . \" to \" . \$GlobalConfVersion . \\\r\ + \n \". Installed an older version\?\");\r\ + \n }\r\ + \n :if (\$GlobalConfVersionBefore < \$GlobalConfVersion) do={\r\ + \n :global GlobalConfChanges;\r\ + \n :global GlobalConfMigration;\r\ + \n :local ChangeLogCode;\r\ + \n :if ([ :len \$ChangeLogCode ] > 0) do={\r\ + \n :if ([ \$ValidateSyntax \$ChangeLogCode ] = true) do={\r\ + \n :onerror Err {\r\ + \n [ :parse \$ChangeLogCode ];\r\ + \n } do={\$LogPrint warning \$0 (\"The changelog failed to run: \" \ + . \$Err)}\r\ + \n } else={\$LogPrint warning \$0 (\"The changelog failed syntax vali\ + dation!\")}\r\ + \n }\r\ + \n :if ([ :len \$GlobalConfMigration ] > 0) do={\r\ + \n :for I from=(\$GlobalConfVersionBefore + 1) to=\$GlobalConfVersion\ + \_do={\r\ + \n :local Migration (\$GlobalConfMigration->[ :tostr \$I ]);\r\ + \n :do {\r\ + \n :if ([ :typeof \$Migration ] != \"str\") do={\r\ + \n \$LogPrint debug \$0 (\"Migration code for change \" . \$I .\ + \_\" is not available.\");\r\ + \n :error false;\r\ + \n }\r\ + \n :if ([ \$ValidateSyntax \$Migration ] = false) do={\r\ + \n \$LogPrint warning \$0 (\"Migration code for change \" . \$I\ + \_. \" failed syntax validation!\");\r\ + \n :error false}\r\ + \n \$LogPrint info \$0 (\"Applying migration for change \" . \$I \ + . \": \" . \$Migration);\r\ + \n :onerror Err {\r\ + \n [ :parse \$Migration ];\r\ + \n } do={\$LogPrint warning \$0 (\"Migration code for change \" .\ + \_\$I . \" failed to run: \" . \$Err)}\r\ + \n } on-error={ }\r\ + \n }\r\ + \n }\r\ + \n :local NotificationMessage (\"The configuration version on \" . \$Id\ + entity . \" increased \" . \\\r\ + \n \"to \" . \$GlobalConfVersion . \", current configuration may nee\ + d modification. \" . \\\r\ + \n \"Please review and update global-config-overlay, then re-run glo\ + bal-config.\");\r\ + \n \$LogPrint info \$0 (\$NotificationMessage);\r\ + \n :if ([ :len \$GlobalConfChanges ] > 0) do={\r\ + \n :set NotificationMessage (\$NotificationMessage . \"\\n\\nChanges:\ + \");\r\ + \n :for I from=(\$GlobalConfVersionBefore + 1) to=\$GlobalConfVersion\ + \_do={\r\ + \n :local Change (\$GlobalConfChanges->[ :tostr \$I ]);\r\ + \n :set NotificationMessage (\$NotificationMessage . \"\\n \" . \\\ + \r\ + \n [ \$SymbolForNotification \"pushpin\" \"*\" ] . \$Change);\r\ + \n \$LogPrint info \$0 (\"Change \" . \$I . \": \" . \$Change);\r\ + \n }\r\ + \n } else={:set NotificationMessage (\$NotificationMessage . \"\\n\\nNe\ + ws and changes are not available.\")}\r\ + \n\r\ + \n :set GlobalConfChanges;\r\ + \n :set GlobalConfMigration;\r\ + \n }\r\ + \n} do={:global ExitOnError; \$ExitOnError \$0 \$Err}\r\ + \n}\r\ + \n\r\ + \n# Global Environment clear. Use: \"\$GlobalEnvRemove True;\".\r\ + \n:set GlobalEnvRemove do={\r\ + \n :local doRmEnv [ :tostr \$1 ];\r\ + \n :global GlobalScriptsUrl;\r\ + \n :local ScriptsUrl;\r\ + \n :global LogPrint;\r\ + \n :if (\$doRmEnv != \"True\") do={\r\ + \n \$LogPrint error \"GlobalEnvRemove\" (\"This script is needed \\\"T\ + rue\\\" for confirm to remove global environment variables!\");\r\ + \n :return [];\r\ + \n :error true; \r\ + \n } else={\r\ + \n :set ScriptsUrl \$GlobalScriptsUrl;\r\ + \n :delay 5;\r\ + \n :foreach var in=[/system/script/environment print as-value] do={/sy\ + stem/script/environment remove (\$var->\".id\")}\r\ + \n :delay 5;\r\ + \n :global GlobalScriptsUrl \$ScriptsUrl;\r\ + \n \$LogPrint warning \"GlobalEnvRemove\" (\"Done!\");\r\ + \n :return [];\r\ + \n :error false;\r\ + \n }\r\ + \n}\r\ + \n\r\ + \n# Add and fix global scheduler\r\ + \n:put \"Add or/and fix Global scheduler...\";\r\ + \n:local OnEvent \"/system/script { run AM-GlobalConfig; run AM-GlobalFunc\ + ; }\";\r\ + \n:local Comment \"Setup Global Environment for scripts\";\r\ + \n:if ([ :len [ /system/scheduler/find where name=\"AM-SetGlobalEnv\" ] ] \ + = 0) do={\r\ + \n /system/scheduler/add name=\"AM-SetGlobalEnv\" comment=\$Comment on-ev\ + ent=\$OnEvent start-time=startup;\r\ + \n}\r\ + \n:if ([ /system/scheduler/get \"AM-SetGlobalEnv\" comment ] != \$Comment)\ + \_do={\r\ + \n /system/scheduler/set \"AM-SetGlobalEnv\" comment=\$Comment;\r\ + \n}\r\ + \n:if ([ /system/scheduler/get \"AM-SetGlobalEnv\" on-event ] != \$OnEvent\ + ) do={\r\ + \n /system/scheduler/set \"AM-SetGlobalEnv\" on-event=\$OnEvent;\r\ + \n}\r\ + \n# Add Update Script scheduler\r\ + \n:put \"Add or/and fix Update Script scheduler\";\r\ + \n:set OnEvent \":global ScriptInstallUpdate; \\\$ScriptInstallUpdate;\";\ + \r\ + \n:set Comment \"Every Day Check For Update Scripts\";\r\ + \n:if ([ :len [ /system/scheduler/find where name=\"AM-ScriptInstallUpdate\ + \" ] ] = 0) do={\r\ + \n/system/scheduler/add name=\"AM-ScriptInstallUpdate\" comment=\$Comment \ + start-time=startup interval=1d on-event=\$OnEvent;\r\ + \n}\r\ + \n\r\ + \n#:local Resource [ /system/resource/get ];\r\ + \n#:log info (\$ScriptName . \" Loaded on \" . \$Resource->\"board-name\" \ + . \" with RouterOS \" . \$Resource->\"version\" . \" and Architecture \" .\ + \".\");\r\ + \n\r\ + \n:onerror Err {\r\ + \n :global GlobalConfReady;\r\ + \n :retry { :if (\$GlobalConfReady != true) do={ :error (\"Global configs\ + \_not ready.\"); }; } delay=100ms max=5;\r\ + \n\r\ + \n# signal we are ready\r\ + \n:set GlobalFuncReady true;\r\ + \n:set ExitOK true;\r\ + \n:log warning (\"This script \$ScriptName Loaded \" . \\\r\ + \n [ \$IfThenElse (\$CommitId != \"unknown\") ([ \$CommitBrief ] . \" \ + \") ] . \\\r\ + \n \"on \" . \$devBoardName . \"\\nRouterOS: \" . \$devCurVersion . \"\ + \\nArchitecture: \" . \$devCurArch . \"\\nIdentity: \" . \$Identity);\r\ + \n} do={:global ExitOnError; \$ExitOnError \$0 \$Err;}\r\ + \n\r\ + \n#} do={:global ExitError; \$ExitError \$ExitOK [ :jobname ] \$Err}\r\ + \n# log the successful load of the script, or an error if it failed\r\ + \n#:if ([\$GlobalFuncReady] = true && [\$GlobalConfReady] = true) do={\r\ + \n" +add dont-require-permissions=no name=fetchCustom owner=vados policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source="\ + \r\ + \n\r\ + \n#root.mnuc.backuper\r\ + \n:global GlobalScriptsUrl \"https://ros.vados.ru/\";\r\ + \n/tool/fetch mode=https url=(\$GlobalScriptsUrl . \".bak/mikro_bak_rsa@10\ + .30.30.10.pub\") dst-path=\"/mikro_bak_rsa@10.30.30.10.pub\";\r\ + \n#/usb1/mikro_bak_rsa.pub" +add dont-require-permissions=yes name=MkTmpfs owner=vados policy=\ + ftp,read,write,policy,test,sniff,sensitive source=\ + ":global MkDir;\r\ + \n\r\ + \n\$MkDir /usb1/tmpfs;" +add dont-require-permissions=no name=CreateContainer owner=vados policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source=":\ + local contIF \"veth1\";\r\ + \n:local contIP \"10.10.10.10/24\";\r\ + \n:local contGW \"10.10.10.1\";\r\ + \n#/interface/veth/add name=\$contIF address=\$contIP gateway=\$contGW;\r\ + \n:local contBridgeIF \"Bridge-DOC\";\r\ + \n:local contBridgeIP \"10.10.10.1/24\";\r\ + \n/interface/bridge/add name=\$contBridgeIF;\r\ + \n/ip/address/add address=\$contBridgeIP interface=\$contBridgeIF;\r\ + \n/interface/bridge/port/add bridge=\$contBridgeIF interface=\$contIF;\r\ + \n/container/config/set ram-high=768M registry-url=https://registry-1.dock\ + er.io tmpdir=sata1/tmp\r\ + \n" +add dont-require-permissions=no name=carkeeperbot owner=vados policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source="/\ + container/mounts/add list=carkeeper_configs/.profile src=sata1/carkeeper/c\ + onfigs/.profile dst=/root/.ashrc;\r\ + \n/container/mounts/add list=carkeeper_configs/php.ini src=sata1/carkeeper\ + /configs/php.ini dst=/etc/php82/php.ini;\r\ + \n#/container/mounts/add list=carkeeper_configs src=sata1/carkeeper/config\ + s dst=/configs;\r\ + \n/container/mounts/add list=carkeeper_app src=sata1/carkeeper/app dst=/ap\ + p;\r\ + \n/container/mounts/add list=carkeeper_scripts src=sata1/carkeeper/scripts\ + \_dst=/scripts;\r\ + \n/container/mounts/add list=carkeeper_configs/sshd_config src=sata1/carke\ + eper/configs/sshd_config dst=/etc/ssh/sshd_config;\r\ + \n\r\ + \n/container/mounts/add list=carkeeper_tmp src=sata1/carkeeper/tmp dst=/va\ + r/tmp;\r\ + \n/container/mounts/add list=carkeeper_sync src=sata1/carkeeper/sync dst=/\ + var/sync;\r\ + \n" +add comment="Enable or disable ip addresses based on bridge port state" \ + dont-require-permissions=no name=mod/AM-IPbridge owner=mod/AM-IPbridge \ + policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + source="#!rsc by Vados\r\ + \n# RouterOS script: mod/AM-IPbridge\r\ + \n# Script comment: Enable or disable ip addresses based on bridge port st\ + ate\r\ + \n# Copyright (c) 2005-2026 Vados \r\ + \n#\r\ + \n#\r\ + \n# requires RouterOS, version=7.19\r\ + \n# requires device-mode, fetch\r\ + \n#\r\ + \n:local ScriptName [ :jobname ];\r\ + \n\r\ + \n# Add this Script scheduler\r\ + \n:if ([ :len [ /system/scheduler/find where name=\$ScriptName ] ] = 0) do\ + ={\r\ + \n:log warning (\"SystemScheduler for script: \" . \$ScriptName . \" is NO\ + T SET! Fix It Now!\");\r\ + \n:local OnEvent \"/system/script/run \$ScriptName;\";\r\ + \n:local Comment \"Every Day Check For Fake Bridges\";\r\ + \n/system/scheduler/add name=\$ScriptName comment=\$Comment start-time=sta\ + rtup interval=1d on-event=\$OnEvent;\r\ + \n}\r\ + \n\r\ + \n:foreach Bridge in=[ /interface/bridge/find ] do={\r\ + \n :local BrName [ /interface/bridge/get \$Bridge name ];\r\ + \n :if ([ :len [ /interface/bridge/port/find where bridge=\$BrName ] ] > \ + 0) do={\r\ + \n :if ([ :len [ /interface/bridge/port/find where bridge=\$BrName and \ + inactive=no ] ] = 0) do={\r\ + \n /ip/address/disable [ find where !dynamic interface=\$BrName ];\r\ + \n } else={\r\ + \n /ip/address/enable [ find where !dynamic interface=\$BrName ];\r\ + \n }\r\ + \n }\r\ + \n}\r\ + \n" +add dont-require-permissions=no name=mod/AM-TG-Bot owner=mod/AM-TG-Bot \ + policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + source="#!rsc by Vados\ + \n" +/user group +add name=backup policy="telnet,ssh,ftp,read,write,policy,test,sniff,sensitive,\ + !local,!reboot,!winbox,!password,!web,!api,!romon,!rest-api" +/app settings +set auto-update=yes disk=sata1 lan-bridge=Bridge-LAN registry-mirrors="https:/\ + /reg.vados.ru:5000/:https://reg.vados.ru/,https://registry-1.docker.io" +/caps-man aaa +set called-format=ssid +/caps-man access-list +add action=reject allow-signal-out-of-range=10s disabled=no interface=all \ + signal-range=-120..-80 ssid-regexp="" +add action=accept allow-signal-out-of-range=10s disabled=no interface=all \ + signal-range=-79..120 ssid-regexp="" +/caps-man manager +# bad package path +set ca-certificate=CAPsMAN-CA-51B25E507D07 certificate=CAPsMAN-51B25E507D07 \ + enabled=yes package-path=/tmpfs/capsman-packages +/caps-man manager interface +set [ find default=yes ] forbid=yes +add disabled=no interface=Bridge-LAN +/caps-man provisioning +add action=create-dynamic-enabled hw-supported-modes=g,gn,b \ + master-configuration=2G name-format=prefix-identity name-prefix=2G +add action=create-dynamic-enabled hw-supported-modes=an,ac,a \ + master-configuration=5G name-format=prefix-identity name-prefix=5G +add action=create-dynamic-enabled disabled=yes hw-supported-modes=ac,an,a \ + master-configuration=2G name-format=prefix-identity name-prefix=5ghz-ac +add action=create-dynamic-enabled disabled=yes hw-supported-modes=an \ + master-configuration=5G name-format=prefix-identity name-prefix=5ghz-an +/certificate settings +set builtin-trust-store=fetch crl-download=yes crl-use=yes +/container config +set layer-dir=/sata1 registry-url=https://reg.vados.ru tmpdir=/ramstorage \ + username=amster-dev +/container envs +add key=ENV list=carkeeperbot_envs value=/root/.ashrc +add key=PATH list=carkeeperbot_envs value=\ + /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin +add key=PORT list=carkeeperbot_envs value="\${SSH_PORT}" +add key=SSH_PORT list=carkeeperbot_envs value=8222 +/container mounts +add dst=/app list=carkeeper_app src=/sata1/carkeeper/app +add dst=/configs list=carkeeper_configs src=/sata1/carkeeper/configs +add dst=/root/.ashrc list=carkeeper_configs/.profile src=\ + /sata1/carkeeper/configs/.profile +add dst=/etc/php82/php.ini list=carkeeper_configs/php.ini src=\ + /sata1/carkeeper/configs/php.ini +add dst=/etc/ssh/sshd_config list=carkeeper_configs/sshd_config src=\ + /sata1/carkeeper/configs/sshd_config +add dst=/scripts list=carkeeper_scripts src=/sata1/carkeeper/scripts +add dst=/var/sync list=carkeeper_sync src=/sata1/carkeeper/sync +add dst=/var/tmp list=carkeeper_tmp src=/sata1/carkeeper/tmp +/interface bridge port +add bridge=Bridge-LAN interface=ether2 +add bridge=Bridge-DOC interface=veth1 +add bridge=Bridge-LAN interface=LAN +add bridge=Bridge-LAN interface=dynamic +/ipv6 settings +set disable-ipv6=yes disable-link-local-address=yes +/interface detect-internet +set detect-interface-list=LAN internet-interface-list=LAN lan-interface-list=\ + LAN wan-interface-list=LAN +/interface wifi capsman +set package-path=/tmpfs/capsman-packages upgrade-policy=none +/ip address +add address=10.30.30.10/24 interface=Bridge-LAN network=10.30.30.0 +add address=10.10.10.1/24 disabled=yes interface=Bridge-DOC network=\ + 10.10.10.0 +add address=172.18.20.5/30 disabled=yes interface=docker-xray-vless-veth \ + network=172.18.20.4 +/ip dhcp-server +add add-arp=yes address-pool=dhcp always-broadcast=yes bootp-support=none \ + dhcp-option-set=domain-search-set disabled=yes interface=Bridge-LAN \ + lease-script=lease-script lease-time=10m name=nucDHCP server-address=\ + 10.30.30.10 +/ip dns +set allow-remote-requests=yes doh-max-concurrent-queries=100 \ + doh-max-server-connections=20 servers=10.30.30.81 verify-doh-cert=yes +/ip firewall filter +add action=accept chain=input +add action=accept chain=output +add action=accept chain=forward comment="Comment of the rule" disabled=yes +/ip firewall mangle +# docker-xray-vless-veth not ready +add action=change-mss chain=forward new-mss=1360 out-interface=\ + docker-xray-vless-veth protocol=tcp tcp-flags=syn tcp-mss=1420-65535 +/ip firewall nat +# docker-xray-vless-veth not ready +add action=masquerade chain=srcnat out-interface=docker-xray-vless-veth +/ip firewall service-port +set ftp disabled=yes +set tftp disabled=yes +set sip disabled=yes +set pptp disabled=yes +set rtsp disabled=no +/ip route +add disabled=no dst-address=0.0.0.0/0 gateway=10.30.30.81 routing-table=main +/ip service +set ftp disabled=yes +set www disabled=yes +set ssh port=2222 +set www-ssl port=4443 +set api disabled=yes +set api-ssl disabled=yes +/ip service webserver +set acme-plain=no crl-plain=no graphs-plain=no graphs-secure=no index-plain=\ + no index-secure=no rest-plain=no rest-secure=no scep-plain=no \ + webfig-plain=no webfig-secure=no +/ip ssh +set forwarding-enabled=both password-authentication=no \ + publickey-authentication-options=verify-required strong-crypto=yes +/ip upnp +set allow-disable-external-interface=yes enabled=yes +/ipv6 firewall address-list +add address=2400:cb00::/32 list=CLOUDFLARE-IP-Address +add address=2606:4700::/32 list=CLOUDFLARE-IP-Address +add address=2803:f800::/32 list=CLOUDFLARE-IP-Address +add address=2405:b500::/32 list=CLOUDFLARE-IP-Address +add address=2405:8100::/32 list=CLOUDFLARE-IP-Address +add address=2a06:98c0::/29 list=CLOUDFLARE-IP-Address +add address=2c0f:f248::/32 list=CLOUDFLARE-IP-Address +/system clock +set time-zone-autodetect=no time-zone-name=Europe/Moscow +/system gps +set set-system-time=yes +/system identity +set name=MikroNUC +/system note +set show-at-login=no +/system ntp client +set enabled=yes +/system ntp server +set enabled=yes manycast=yes multicast=yes +/system ntp client servers +add address=10.30.30.81 +add address=0.ru.pool.ntp.org +add address=1.ru.pool.ntp.org +add address=2.ru.pool.ntp.org +add address=3.ru.pool.ntp.org +/system scheduler +add comment="Backup Every Week" interval=1w name=BackupEveryWeek on-event=\ + "/system/script { run BackupAndUpdate; }" policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + start-date=2025-07-07 start-time=04:41:27 +add comment="Setup Global Environment for scripts" name=Amster-SetGlobalEnv \ + on-event=\ + "/system/script { run Amster-GlobalConfig; run Amster-GlobalFunc; }" \ + policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + start-time=startup +add comment="Every Day Check For Update Scripts" interval=1d name=\ + Amster-GetInstallUpdate on-event=":global getInstUpd; \$getInstUpd;" \ + policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + start-time=startup +add comment="Every Day Check For Update Scripts" interval=1d name=\ + ScriptInstallUpdate on-event=\ + ":global ScriptInstallUpdate; \$ScriptInstallUpdate;" policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + start-time=startup +add comment="Setup Global Environment for scripts" name=AM-SetGlobalEnv \ + on-event="/system/script { run AM-GlobalConfig; run AM-GlobalFunc; }" \ + policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + start-time=startup +add comment="Every Day Check For Update Scripts" interval=1d name=\ + AM-ScriptInstallUpdate on-event=\ + ":global ScriptInstallUpdate; \$ScriptInstallUpdate;" policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + start-time=startup +add comment="Every Day Check For Fake Bridges" interval=1d name=\ + mod/AM-IPbridge on-event="/system/script/run mod/AM-IPbridge;" policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + start-time=startup +/tool e-mail +set certificate-verification=no from=MikroNUC port=587 \ + server=smtp.mail.me.com tls=starttls user=vadossio@icloud.com +/tool netwatch +add disabled=yes down-script=\ + ":local msg \"Host MikroYellow is DOWN\";\r\ + \n\$TGSendMessage \$msg;" host=10.30.30.86 http-codes="" interval=10s \ + test-script="" type=simple up-script=\ + ":global TGSendMessage;\r\ + \n\$TGSendMessage \"Host MikroYellow is UP\";" +/user aaa +set accounting=no diff --git a/MikroNUC/history/20260428/20260428030001-Diff-Config.rsc b/MikroNUC/history/20260428/20260428030001-Diff-Config.rsc new file mode 100644 index 0000000..2f32483 --- /dev/null +++ b/MikroNUC/history/20260428/20260428030001-Diff-Config.rsc @@ -0,0 +1,386 @@ +817c817 +< \n:global CommitId \"main/264/cbddfbab\";\r\ +--- +> \n:global CommitId \"main/247/016960a4\";\r\ +820c820 +< r: root, in 02:55:03 28.04.2026.\";\r\ +--- +> r: root, in 03:45:02 16.04.2026.\";\r\ +872c872 +< \n:global ROsVerAvail;\r\ +--- +> \n#:global ROsVerAvail;\r\ +948,950d947 +< \n :global currentUpdateChannel;\r\ +< \n :global ROsVerAvail;\r\ +< \n :global arrDeviceInfo;\r\ +953,954c950 +< \n :if ([ :len \$updateChannel ] > 0 && \$CurrentChannel != \$updateChann\ +< el) do={\r\ +--- +> \n :if (\$CurrentChannel != \$updateChannel) do={\r\ +962,963c958 +< \n :local Channel [ :tostr (\$Update->\"channel\") ];\r\ +< \n :set currentUpdateChannel \$Channel;\r\ +--- +> \n :local Channel (\$Update->\"channel\");\r\ +966d960 +< \n\r\ +975,976d968 +< \n :set ROsVerAvail [ :tostr [ /system/package/update/get latest-version \ +< ] ];\r\ +980,981c972,975 +< \n :if ([ :typeof \$arrDeviceInfo ] != \"array\") do={\r\ +< \n :set arrDeviceInfo [:toarray \$arrDeviceInfo];\r\ +--- +> \n :if ([:len \$arrDeviceInfo] = 0) do={\r\ +> \n :global arrDeviceInfo ({});\r\ +> \n :local arrDeviceInfo ({\"section\":{\"key\":\"\"; \"value\":\"\";};}\ +> );\r\ +983,985c977,990 +< \n :retry command={:set (\$arrDeviceInfo->\"devUpdates\") [ /system/pac\ +< kage/update/get ]} delay=500ms max=5 on-error={:log error (\"Error\")};\r\ +< \n :return true;\r\ +--- +> \n # else={:local arrDeviceInfo ({})}\r\ +> \n :retry command={:set (\$arrDeviceInfo->\"devUpdates\") [[ :parse \"/\ +> system/package/update/get\" ]]} delay=500ms max=5 on-error={:log error (\"\ +> Error\")};\r\ +> \n #:set (\$arrDeviceInfo->\"devUpdates\") {\"devCurrentChannel\"; \$Cu\ +> rrentChannel;};\r\ +> \n #:set (\$arrDeviceInfo->\"devUpdates\") {\"devCurrentVersion\"; (\$U\ +> pdate->\"installed-version\");};\r\ +> \n #:set (\$arrDeviceInfo->\"devUpdates\") {\"devCurrentChannelVersion\ +> \"; [/system/resource/get version];};\r\ +> \n #:set (\$arrDeviceInfo->\"devUpdates\") {\"devUpdateChannel\"; [\$up\ +> dateChannel];};\r\ +> \n #:set (\$arrDeviceInfo->\"devUpdates\") {\"devUpdateVersion\"; (\$Up\ +> date->\"latest-version\");};\r\ +987,1029c992 +< \n :return \$PkgUpdStatus;\r\ +< \n }\r\ +< \n}\r\ +< \n\r\ +< \n:set WaitCheckUpdates do={\r\ +< \n :global IsCheckUpdates;\r\ +< \n :global PkgUpdStatus;\r\ +< \n :global currentUpdateChannel;\r\ +< \n :global ROsVerAvail;\r\ +< \n :global arrDeviceInfo;\r\ +< \n\r\ +< \n :local Status \"\";\r\ +< \n :local Update;\r\ +< \n :local WaitCount 0;\r\ +< \n\r\ +< \n :if ([ \$IsCheckUpdates true ] = false) do={\r\ +< \n :return false;\r\ +< \n }\r\ +< \n\r\ +< \n :set Status [ :tostr [ /system/package/update/get status ] ];\r\ +< \n :while ((\$Status = \"\" || \$Status = \"finding out latest version...\ +< \") && \$WaitCount < 60) do={\r\ +< \n :delay 1s;\r\ +< \n :set WaitCount (\$WaitCount + 1);\r\ +< \n :set Status [ :tostr [ /system/package/update/get status ] ];\r\ +< \n }\r\ +< \n\r\ +< \n :set Update [ /system/package/update/get ];\r\ +< \n :set currentUpdateChannel [ :tostr (\$Update->\"channel\") ];\r\ +< \n :set ROsVerAvail [ :tostr (\$Update->\"latest-version\") ];\r\ +< \n :if ((\$Update->\"status\") = \"New version is available\") do={\r\ +< \n :set PkgUpdStatus true;\r\ +< \n } else={\r\ +< \n :set PkgUpdStatus false;\r\ +< \n }\r\ +< \n :if ([ :typeof \$arrDeviceInfo ] != \"array\") do={\r\ +< \n :set arrDeviceInfo [:toarray \$arrDeviceInfo];\r\ +< \n }\r\ +< \n :set (\$arrDeviceInfo->\"devUpdates\") \$Update;\r\ +< \n\r\ +< \n :if (\$Status = \"\" || \$Status = \"finding out latest version...\") \ +< do={\r\ +< \n :return false;\r\ +--- +> \n :return \$PkgUpdStatus;\r\ +1031d993 +< \n :return true;\r\ +1043d1004 +< \n :global arrDeviceInfo;\r\ +1047,1048c1008,1012 +< \n :global devRunning;\r\ +< \n :global devCurArch;\r\ +--- +> \n\r\ +> \n :global arrDeviceInfo [:toarray {\"section\"={\"key\"=\"\"; \"value\"\ +> =\"\";} }];\r\ +> \n #:do {:set (\$arrDeviceInfo->\"Updates\") [[ :parse \"/system/package\ +> /update/get\" ]]} on-error={}\r\ +1051c1015,1024 +< \n :global devBuildTime;\r\ +--- +> \n :global devRbCurrentFw;\r\ +> \n :global devRbUpgradeFw;\r\ +> \n\r\ +> \n :global devRunning;\r\ +> \n :global devCurArch;\r\ +> \n :global ROsVerCurrent;\r\ +> \n :global ROsChannelCurrent;\r\ +> \n :global ROsVerAvail;\r\ +> \n\r\ +> \n :global ParseCustom;\r\ +1055,1056c1028,1029 +< \n :global currentUpdateChannel;\r\ +< \n :global ROsVerAvail;\r\ +--- +> \n :global devBuildTime;\r\ +> \n :global GetPubIp;\r\ +1058c1031 +< \n :local DeviceInfo;\r\ +--- +> \n :local License [/system/license/get];\r\ +1060,1083c1033,1037 +< \n :local Update [ /system/package/update/get ];\r\ +< \n :local VersionString [ :tostr (\$Resource->\"version\") ];\r\ +< \n :local ChannelStart [ :find \$VersionString \" (\" ];\r\ +< \n :local RouterBoard;\r\ +< \n :local IsRouterBoard false;\r\ +< \n :local RunningMode \"\";\r\ +< \n\r\ +< \n :set devCurArch [ :tostr (\$Resource->\"architecture-name\") ];\r\ +< \n :set devBuildTime [ :tostr (\$Resource->\"build-time\") ];\r\ +< \n :set runningChannelVersion \$VersionString;\r\ +< \n :set runningVersion \$VersionString;\r\ +< \n :set runningChannel \"\";\r\ +< \n\r\ +< \n :if ([ :typeof \$ChannelStart ] = \"num\" && \$ChannelStart >= 0) do=\ +< {\r\ +< \n :set runningVersion [ :pick \$VersionString 0 \$ChannelStart ];\r\ +< \n :local ChannelRest [ :pick \$VersionString (\$ChannelStart + 2) [ :\ +< len \$VersionString ] ];\r\ +< \n :local ChannelEnd [ :find \$ChannelRest \")\" ];\r\ +< \n :if ([ :typeof \$ChannelEnd ] = \"num\" && \$ChannelEnd >= 0) do={\ +< \r\ +< \n :set runningChannel [ :pick \$ChannelRest 0 \$ChannelEnd ];\r\ +< \n }\r\ +< \n }\r\ +--- +> \n :set devBuildTime (\$Resource->\"build-time\");\r\ +> \n :set runningChannelVersion (\$Resource->\"version\");\r\ +> \n :set runningChannel [\$ParseCustom \$runningChannelVersion \"(\" \")\ +> \" 1];\r\ +> \n :set runningVersion [\$ParseCustom \$runningChannelVersion \" \"];\r\ +1084a1039 +> \n :do {\r\ +1087,1094c1042,1055 +< \n :do {\r\ +< \n :set RouterBoard [[ :parse \"/system/routerboard/get\" ]];\r\ +< \n# :set RouterBoard [ /system/routerboard/get ];\r\ +< \n :if ((\$RouterBoard->\"routerboard\") = true) do={\r\ +< \n :set IsRouterBoard true;\r\ +< \n }\r\ +< \n } on-error={}\r\ +< \n }\r\ +--- +> \n :local RouterBoard;\r\ +> \n :do {:set RouterBoard [[ :parse \"/system/routerboard/get\" ]]} on\ +> -error={}\r\ +> \n :set devModel (\$RouterBoard->\"model\");\r\ +> \n :set devRbRevision (\$RouterBoard->\"revision\");\r\ +> \n :set devRbSerialNumber (\$RouterBoard->\"serial-number\");\r\ +> \n #:set devRbCurrentFw (\$RouterBoard->\"current-firmware\");\r\ +> \n #:set devRbUpgradeFw (\$RouterBoard->\"upgrade-firmware\");\r\ +> \n :if (\$devCurArch = \"mipsbe\" || \$devCurArch = \"arm\") do={\r\ +> \n :global devRunning [ /system/device-mode/get mode ];\r\ +> \n } else={\r\ +> \n :global devRunning [/system/device-mode/get running];}\r\ +> \n } else={\r\ +> \n :set devModel \$devBoardName;\r\ +1096,1097c1057,1064 +< \n :do {\r\ +< \n :set RunningMode [ /system/device-mode/get mode ];\r\ +--- +> \n :set devRbRevision false;\r\ +> \n :set devRbSerialNumber false;\r\ +> \n# :set devRbCurrentFw false;\r\ +> \n# :set devRbUpgradeFw false;\r\ +> \n #:set devCurrentFw \$runningVersion;#:set devUpgradeFw \$ROsVerAvail\ +> ;\r\ +> \n :set devRunning [/system/device-mode/get running];\r\ +> \n }\r\ +1099,1115c1066,1067 +< \n :do {\r\ +< \n :set RunningMode [ /system/device-mode/get running ];\r\ +< \n } on-error={\r\ +< \n :set RunningMode \"\";\r\ +< \n }\r\ +< \n }\r\ +< \n :set devRunning \$RunningMode;\r\ +< \n\r\ +< \n :if (\$IsRouterBoard = true) do={\r\ +< \n :set devModel [ :tostr (\$RouterBoard->\"model\") ];\r\ +< \n :set devRbRevision [ :tostr (\$RouterBoard->\"revision\") ];\r\ +< \n :set devRbSerialNumber [ :tostr (\$RouterBoard->\"serial-number\") \ +< ];\r\ +< \n } else={\r\ +< \n :set devModel \$devBoardName;\r\ +< \n :set devRbRevision \"\";\r\ +< \n :set devRbSerialNumber \"\";\r\ +--- +> \n \$LogPrint error \$0 (\"Error in Function getDevice!\");\r\ +> \n :return false;\r\ +1117,1145c1069 +< \n\r\ +< \n :set currentUpdateChannel [ :tostr (\$Update->\"channel\") ];\r\ +< \n :set ROsVerAvail [ :tostr (\$Update->\"latest-version\") ];\r\ +< \n\r\ +< \n :set (\$DeviceInfo->\"board-name\") \$devBoardName;\r\ +< \n :set (\$DeviceInfo->\"architecture-name\") \$devCurArch;\r\ +< \n :set (\$DeviceInfo->\"model\") \$devModel;\r\ +< \n :set (\$DeviceInfo->\"revision\") \$devRbRevision;\r\ +< \n :set (\$DeviceInfo->\"serial-number\") \$devRbSerialNumber;\r\ +< \n :set (\$DeviceInfo->\"running-mode\") \$devRunning;\r\ +< \n :set (\$DeviceInfo->\"build-time\") \$devBuildTime;\r\ +< \n :set (\$DeviceInfo->\"running-channel-version\") \$runningChannelVers\ +< ion;\r\ +< \n :set (\$DeviceInfo->\"running-version\") \$runningVersion;\r\ +< \n :set (\$DeviceInfo->\"running-channel\") \$runningChannel;\r\ +< \n :set (\$DeviceInfo->\"routerboard\") \$IsRouterBoard;\r\ +< \n :set (\$DeviceInfo->\"current-firmware\") [ :tostr (\$RouterBoard->\"\ +< current-firmware\") ];\r\ +< \n :set (\$DeviceInfo->\"upgrade-firmware\") [ :tostr (\$RouterBoard->\"\ +< upgrade-firmware\") ];\r\ +< \n :set (\$DeviceInfo->\"package-channel\") \$currentUpdateChannel;\r\ +< \n :set (\$DeviceInfo->\"installed-version\") [ :tostr (\$Update->\"inst\ +< alled-version\") ];\r\ +< \n :set (\$DeviceInfo->\"latest-version\") \$ROsVerAvail;\r\ +< \n :set (\$DeviceInfo->\"update-status\") [ :tostr (\$Update->\"status\"\ +< ) ];\r\ +< \n\r\ +< \n :set arrDeviceInfo \$DeviceInfo;\r\ +< \n :return \$DeviceInfo;\r\ +--- +> \n:return true;\r\ +1149c1073,1082 +< \n :global GetArrDeviceInfo;\r\ +--- +> \n :global WaitArrDeviceInfo;\r\ +> \n # \$WaitDeviceInfo;\r\ +> \n :global devBoardName;\r\ +> \n :global devCurArch;\r\ +> \n :global devModel;\r\ +> \n :global devRunning;\r\ +> \n :global devRbRevision;\r\ +> \n :global devRbSerialNumber;\r\ +> \n :global PiblicIpAddress;\r\ +> \n\r\ +1154,1155c1087 +< \n :global CommitBrief;\r\ +< \n\r\ +--- +> \n :local Return;\r\ +1156a1089 +> \n :local Resource [/system/resource/get];\r\ +1158,1162c1091 +< \n :local Info [ \$GetArrDeviceInfo ];\r\ +< \n\r\ +< \n :if ([ :typeof \$Info ] != \"array\") do={\r\ +< \n :return false;\r\ +< \n }\r\ +--- +> \n :local Update [ /system/package/update/get ];\r\ +1164,1165c1093,1094 +< \n :return ( \\\r\ +< \n [ \$FormatLine \"Hostname\" \$Identity ] . \"\\n\" . \\\r\ +--- +> \n :set Return ([ \$FormatLine \"Hostname:\" \$Identity ] . \"\\n\" . \\\ +> \r\ +1167,1168c1096,1097 +< \n ([ \$FormatLine \"Location\" (\$Snmp->\"location\") ] . \"\\n\") ]\ +< \_. \\\r\ +--- +> \n ([ \$FormatLine \"Location:\" (\$Snmp->\"location\") ] . \"\\n\") \ +> ] . \\\r\ +1170,1182c1099,1109 +< \n ([ \$FormatLine \"Contact\" (\$Snmp->\"contact\") ] . \"\\n\") ] .\ +< \_\\\r\ +< \n \"Hardware:\\n\" . \\\r\ +< \n [ \$FormatLine \" Board\" (\$Info->\"board-name\") ] . \"\\n\" . \ +< \\\r\ +< \n [ \$FormatLine \" Arch\" (\$Info->\"architecture-name\") ] . \"\\\ +< n\" . \\\r\ +< \n [ \$FormatLine \" Model\" (\$Info->\"model\") ] . \\\r\ +< \n [ \$IfThenElse ([ :len (\$Info->\"revision\") ] > 0) \\\r\ +< \n (\" \" . (\$Info->\"revision\")) ] . \"\\n\" . \\\r\ +< \n [ \$IfThenElse ([ :len (\$Info->\"serial-number\") ] > 0) \\\r\ +< \n ([ \$FormatLine \" Serial\" (\$Info->\"serial-number\") ] . \"\ +< \\n\") ] . \\\r\ +--- +> \n ([ \$FormatLine \"Contact:\" (\$Snmp->\"contact\") ] . \"\\n\") ] \ +> . \\\r\ +> \n \"Hardware:\\n\" . \\\r\ +> \n [ \$FormatLine \" Board:\" . \$devBoardName ] . \"\\n\" . \\\r\ +> \n [ \$FormatLine \" Arch:\" . \$devCurArch ] . \"\\n\" . \\\r\ +> \n [ \$FormatLine \" Model:\" \$devModel ] . \\\r\ +> \n [ \$IfThenElse ([ :len \$devRbRevision ] > 0) \\\r\ +> \n (\" \" . \$devRbRevision) ] . \"\\n\" . \\\r\ +> \n [ \$IfThenElse ([ :len \$devRbSerialNumber ] > 0) \\\r\ +> \n ([ \$FormatLine \" Serial:\" . \$devRbSerialNumber ] . \"\\n\"\ +> ) ] . \\\r\ +1184,1186c1111,1112 +< \n ([ \$FormatLine \" License\" (\"level \" . (\$License->\"nlevel\ +< \")) ] . \"\\n\") ] . \\\r\ +< \n \"RouterOS:\\n\" . \\\r\ +--- +> \n ([ \$FormatLine \" License:\" (\"level \" . (\$License->\"nleve\ +> l\")) ] . \"\\n\") ] . \"RouterOS:\\n\" . \\\r\ +1188c1114 +< \n ([ \$FormatLine \" License\" (\"level \" . (\$License->\"level\ +--- +> \n ([ \$FormatLine \" License:\" (\"level \" . (\$License->\"level\ +1190,1200c1116,1122 +< \n [ \$FormatLine \" Channel\" (\$Info->\"package-channel\") ] . \"\ +< \\n\" . \\\r\ +< \n [ \$FormatLine \" Installed\" (\$Info->\"installed-version\") ] .\ +< \_\"\\n\" . \\\r\ +< \n [ \$IfThenElse ([ :len (\$Info->\"running-channel\") ] > 0) \\\r\ +< \n ([ \$FormatLine \" Running\" ((\$Info->\"running-version\") . \ +< \" (\" . (\$Info->\"running-channel\") . \")\") ] . \"\\n\") \\\r\ +< \n ([ \$FormatLine \" Running\" (\$Info->\"running-version\") ] . \ +< \"\\n\") ] . \\\r\ +< \n [ \$IfThenElse ([ :len (\$Info->\"latest-version\") ] > 0 && \\\r\ +< \n (\$Info->\"installed-version\") != (\$Info->\"latest-version\"))\ +--- +> \n [ \$FormatLine \"Running Channel\" \$runningChannel ] . \"\\n\" . \\\ +> \r\ +> \n [ \$FormatLine \" Installed:\" (\$Update->\"installed-version\") \ +> ] . \"\\n\" . \\\r\ +> \n [ \$IfThenElse ([ :typeof (\$Update->\"latest-version\") ] != \"noth\ +> ing\" && \\\r\ +> \n \$Update->\"installed-version\" != \$Update->\"latest-version\")\ +1202,1211c1124,1133 +< \n ([ \$FormatLine \" Available\" (\$Info->\"latest-version\") ] .\ +< \_\"\\n\") ] . \\\r\ +< \n [ \$IfThenElse ((\$Info->\"routerboard\") = true && \\\r\ +< \n (\$Info->\"current-firmware\") != (\$Info->\"upgrade-firmware\")\ +< ) \\\r\ +< \n ([ \$FormatLine \" Firmware\" ((\$Info->\"current-firmware\") .\ +< \_\" -> \" . (\$Info->\"upgrade-firmware\")) ] . \"\\n\") ] . \\\r\ +< \n \"RouterOS-Scripts:\\n\" . \\\r\ +< \n [ \$FormatLine \" Commit\" [ \$CommitBrief ] ] . \"\\n\" . \\\r\ +< \n [ \$FormatLine \" Version\" \$GlobalConfVersion ]);\r\ +--- +> \n ([ \$FormatLine \" Available\" (\$Update->\"latest-version\") ]\ +> \_. \"\\n\") ] . \\\r\ +> \n [ \$IfThenElse (\$RouterBoard->\"routerboard\" = true && \\\r\ +> \n \$RouterBoard->\"current-firmware\" != \$RouterBoard->\"upgrade-\ +> firmware\") \\\r\ +> \n ([ \$FormatLine \" Firmware\" (\$RouterBoard->\"current-firmwar\ +> e\") ] . \"\\n\") ] . \\ \r\ +> \n \"RouterOS-Scripts:\\n\" . \\\r\ +> \n [ \$FormatLine \" Commit\" [ \$CommitBrief ] ] . \"\\n\" . \\\r\ +> \n [ \$FormatLine \" Version\" \$GlobalConfVersion ]);\r\ +2811,2814d2732 +< \n" +< add dont-require-permissions=no name=mod/AM-TG-Bot owner=mod/AM-TG-Bot \ +< policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ +< source="#!rsc by Vados\ -- 2.52.0