From 88de743886a8898969450cc760a802607d71f504 Mon Sep 17 00:00:00 2001 From: vados-dev Date: Thu, 30 Apr 2026 12:40:03 +0300 Subject: [PATCH] Backup for MikroNUC created successfully at Apr 30 12:40:03. --- .../20260430/20260430124001-Binary.backup | Bin 0 -> 327121 bytes MikroNUC/20260430/20260430124001-Config.rsc | 3241 +++++++++++++++++ .../20260430/20260430124001-Diff-Config.rsc | 15 + 3 files changed, 3256 insertions(+) create mode 100644 MikroNUC/20260430/20260430124001-Binary.backup create mode 100644 MikroNUC/20260430/20260430124001-Config.rsc create mode 100644 MikroNUC/history/20260430/20260430124001-Diff-Config.rsc diff --git a/MikroNUC/20260430/20260430124001-Binary.backup b/MikroNUC/20260430/20260430124001-Binary.backup new file mode 100644 index 0000000000000000000000000000000000000000..f4fe69e4860a896fe18d4a002ed29e58ec80339a GIT binary patch literal 327121 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ĈU&Bc+T}z~?++B0USXCi{59*xBKmAev_`^Y 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%0ACq&w=YA8a~}fV{^ft(9Lvg?iK<9x-ugX1G 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 qr&8sO+%9M#jc!*jS+f9jJrN5|rHzlX6l\"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/266/c0a5c627\";\r\ + \n:global CommitTAG \"unknown\";\r\ + \n:global CommitInfo \"Autocommit in repo: ros.vados.ru, generated by owne\ + r: root, in 03:10: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 comment="Use Telegram to chat with your Router and send commands" \ + 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\r\ + \n# RouterOS script: mod/AM-TG-Bot\r\ + \n# Script comment: Use Telegram to chat with your Router and send command\ + s\r\ + \n# Copyright (c) 2007-2026 Vados \r\ + \n#\r\ + \n#\r\ + \n# requires RouterOS, version=7.19\r\ + \n# requires device-mode, fetch\r\ + \n:local ExitOK false;\r\ + \n:onerror Err {\r\ + \n :global GlobalConfReady; :global GlobalFuncReady;\r\ + \n :retry { :if (\$GlobalConfReady != true || \$GlobalFuncReady != true) \ + \\\r\ + \n do={ :error (\"Global config and/or functions not ready.\"); }; } \ + delay=500ms max=50;\r\ + \n :local ScriptName [ :jobname ];\r\ + \n\r\ + \n :global Identity;\r\ + \n :global TelegramChatActive;\r\ + \n :global TelegramChatGroups;\r\ + \n :global TelegramChatId;\r\ + \n :global TelegramChatIdsTrusted;\r\ + \n :global TelegramChatOffset;\r\ + \n :global TelegramChatRunTime;\r\ + \n :global TelegramMessageIDs;\r\ + \n :global TelegramRandomDelay;\r\ + \n :global TelegramTokenId;\r\ + \n\r\ + \n :global CertificateAvailable;\r\ + \n :global EitherOr;\r\ + \n :global EscapeForRegEx;\r\ + \n :global FileExists;\r\ + \n :global GetRandom20CharAlNum;\r\ + \n :global IfThenElse;\r\ + \n :global LogPrint;\r\ + \n :global LogPrintVerbose;\r\ + \n :global MAX;\r\ + \n :global MIN;\r\ + \n :global MkDir;\r\ + \n :global RandomDelay;\r\ + \n :global RmDir;\r\ + \n :global ScriptLock;\r\ + \n :global SendTelegram2;\r\ + \n :global SymbolForNotification;\r\ + \n :global ValidateSyntax;\r\ + \n :global WaitForFile;\r\ + \n\r\ + \n :if ([ \$ScriptLock \$ScriptName ] = false) do={\r\ + \n :set ExitOK true;\r\ + \n :error false;\r\ + \n }\r\ + \n\r\ + \n :if ([ :len [ /system/scheduler/find where name=\$ScriptName ] ] = 0) \ + do={\r\ + \n /system/scheduler/add start-time=startup interval=30s name=\$ScriptN\ + ame on-event=\"/system/script/run \$ScriptName;\" comment=\"Telegram Chat \ + Bot\";\r\ + \n }\r\ + \n\r\ + \n :if ([ :typeof \$TelegramChatOffset ] != \"array\") do={\r\ + \n :set TelegramChatOffset { 0; 0; 0 };\r\ + \n }\r\ + \n :if ([ :typeof \$TelegramRandomDelay ] != \"num\") do={\r\ + \n :set TelegramRandomDelay 0;\r\ + \n }\r\ + \n\r\ + \n :if ([ \$CertificateAvailable \"Go Daddy Root Certificate Authority - \ + G2\" \"fetch\" ] = false) do={\r\ + \n \$LogPrint warning \$ScriptName (\"Downloading required certificate \ + failed.\");\r\ + \n :set ExitOK true;\r\ + \n :error false;\r\ + \n }\r\ + \n\r\ + \n \$RandomDelay \$TelegramRandomDelay;\r\ + \n :local Data false;\r\ + \n :for I from=1 to=4 do={\r\ + \n :if (\$Data = false) do={\r\ + \n :onerror Err {\r\ + \n :set Data ([ /tool/fetch check-certificate=yes-without-crl \\\r\ + \n (\"https://api.telegram.org/bot\" . \$TelegramTokenId . \"/get\ + Updates\?offset=\" . \\\r\ + \n \$TelegramChatOffset->0 . \"&allowed_updates=%5B%22message%22%\ + 5D\") output=user as-value ]->\"data\");\r\ + \n :set TelegramRandomDelay [ \$MAX 0 (\$TelegramRandomDelay - 1) ]\ + ;\r\ + \n } do={\r\ + \n :if (\$I < 4) do={\r\ + \n \$LogPrint debug \$ScriptName (\"Fetch failed, \" . \$I . \". \ + try: \" . \$Err);\r\ + \n :set TelegramRandomDelay [ \$MIN 15 (\$TelegramRandomDelay + 5\ + ) ];\r\ + \n :delay ((\$I * \$I) . \"s\");\r\ + \n }\r\ + \n }\r\ + \n }\r\ + \n }\r\ + \n :if (\$Data = false) do={\r\ + \n \$LogPrint warning \$ScriptName (\"Failed getting updates.\");\r\ + \n :set ExitOK true;\r\ + \n :error false;\r\ + \n }\r\ + \n\r\ + \n :local JSON [ :deserialize from=json value=\$Data ];\r\ + \n :local UpdateID 0;\r\ + \n :local Uptime [ /system/resource/get uptime ];\r\ + \n :foreach Update in=(\$JSON->\"result\") do={\r\ + \n :set UpdateID (\$Update->\"update_id\");\r\ + \n \$LogPrintVerbose debug \$ScriptName (\"Update \" . \$UpdateID . \":\ + \_\" . [ :serialize to=json \$Update ]);\r\ + \n\r\ + \n :local Message (\$Update->\"message\");\r\ + \n :local IsAnyReply ([ :typeof (\$Message->\"reply_to_message\") ] = \ + \"array\");\r\ + \n :local IsMyReply (\$TelegramMessageIDs->[ :tostr (\$Message->\"reply\ + _to_message\"->\"message_id\") ]);\r\ + \n :if ((\$IsMyReply = 1 || \$TelegramChatOffset->0 > 0 || \$Uptime > 5\ + m) && \$UpdateID >= \$TelegramChatOffset->2) do={\r\ + \n :local Trusted false;\r\ + \n :local Chat (\$Message->\"chat\");\r\ + \n :local From (\$Message->\"from\");\r\ + \n :local Command (\$Message->\"text\");\r\ + \n :local ThreadId [ \$IfThenElse (\$Message->\"is_topic_message\") (\ + \$Message->\"message_thread_id\") \"\" ];\r\ + \n :foreach IdsTrusted in=(\$TelegramChatId, \$TelegramChatIdsTrusted\ + ) do={\r\ + \n :if (\$From->\"id\" = \$IdsTrusted || \\\r\ + \n \$From->\"username\" = \$IdsTrusted || \\\r\ + \n \$Chat->\"id\" = \$IdsTrusted) do={\r\ + \n :set Trusted true;\r\ + \n }\r\ + \n }\r\ + \n :if (\$Trusted = true) do={\r\ + \n :local Done false;\r\ + \n :if (\$Command = \"\?\") do={\r\ + \n \$LogPrint info \$ScriptName (\"Sending notice for update \" .\ + \_\$UpdateID . \".\");\r\ + \n \$SendTelegram2 ({ origin=\$ScriptName; chatid=(\$Chat->\"id\"\ + ); silent=true; \\\r\ + \n replyto=(\$Message->\"message_id\"); threadid=\$ThreadId; \\\ + \r\ + \n subject=([ \$SymbolForNotification \"speech-balloon\" ] . \"\ + Telegram Chat\"); \\\r\ + \n message=([ \$IfThenElse ([ :len (\$From->\"first_name\") ] >\ + \_0) (\"Hello \" . (\$From->\"first_name\") . \"!\\n\\n\") ] . \\\r\ + \n \"Online\" . [ \$IfThenElse \$TelegramChatActive \" (and a\ + ctive!)\" ] . \", awaiting your commands!\") });\r\ + \n :set Done true;\r\ + \n }\r\ + \n :if (\$Done = false && [ :pick \$Command 0 1 ] = \"!\") do={\r\ + \n :if (\$Command ~ (\"^! *(\" . [ \$EscapeForRegEx \$Identity ] \ + . \"|@\" . \$TelegramChatGroups . \")\\\$\")) do={\r\ + \n :set TelegramChatActive true;\r\ + \n } else={\r\ + \n :set TelegramChatActive false;\r\ + \n }\r\ + \n \$LogPrint info \$ScriptName (\"Now \" . [ \$IfThenElse \$Tele\ + gramChatActive \"active\" \"passive\" ] . \\\r\ + \n \" from update \" . \$UpdateID . \"!\");\r\ + \n :set Done true;\r\ + \n }\r\ + \n :if (\$Done = false && (\$IsMyReply = 1 || (\$IsAnyReply = false\ + \_&& \\\r\ + \n \$TelegramChatActive = true)) && [ :len \$Command ] > 0) do\ + ={\r\ + \n :if ([ \$ValidateSyntax \$Command ] = true) do={\r\ + \n :local State \"\";\r\ + \n :local File (\"tmpfs/telegram-chat/\" . [ \$GetRandom20CharA\ + lNum 6 ]);\r\ + \n :if ([ \$MkDir \"tmpfs/telegram-chat\" ] = false) do={\r\ + \n \$LogPrint error \$ScriptName (\"Failed creating directory\ + !\");\r\ + \n :set ExitOK true;\r\ + \n :error false;\r\ + \n }\r\ + \n \$LogPrint info \$ScriptName (\"Running command from update \ + \" . \$UpdateID . \": \" . \$Command);\r\ + \n :execute script=(\":do {\\n\" . \$Command . \"\\n} on-error=\ + { /file/add name=\\\"\" . \$File . \".failed\\\" };\" . \\\r\ + \n \"/file/add name=\\\"\" . \$File . \".done\\\"\") file=(\$\ + File . \"\\00\");\r\ + \n :if ([ \$WaitForFile (\$File . \".done\") [ \$EitherOr \$Tel\ + egramChatRunTime 20s ] ] = false) do={\r\ + \n :set State ([ \$SymbolForNotification \"warning-sign\" ] .\ + \_\"The command did not finish, still running in background.\\n\\n\");\r\ + \n }\r\ + \n :if ([ \$FileExists (\$File . \".failed\") ] = true) do={\r\ + \n :set State ([ \$SymbolForNotification \"cross-mark\" ] . \ + \"The command failed with an error!\\n\\n\");\r\ + \n }\r\ + \n :local Content ([ /file/read chunk-size=32768 file=\$File as\ + -value ]->\"data\");\r\ + \n \$SendTelegram2 ({ origin=\$ScriptName; chatid=(\$Chat->\"id\ + \"); silent=true; \\\r\ + \n replyto=(\$Message->\"message_id\"); threadid=\$ThreadId; \ + \\\r\ + \n subject=([ \$SymbolForNotification \"speech-balloon\" ] . \ + \"Telegram Chat\"); \\\r\ + \n message=([ \$SymbolForNotification \"gear\" ] . \"Command:\ + \\n\" . \$Command . \"\\n\\n\" . \\\r\ + \n \$State . [ \$IfThenElse ([ :len \$Content ] > 0) \\\r\ + \n ([ \$SymbolForNotification \"memo\" ] . \"Output:\\n\" .\ + \_\$Content) \\\r\ + \n ([ \$SymbolForNotification \"memo\" ] . \"No output.\") \ + ]) });\r\ + \n \$RmDir \"tmpfs/telegram-chat\";\r\ + \n } else={\r\ + \n \$LogPrint info \$ScriptName (\"The command from update \" .\ + \_\$UpdateID . \" failed syntax validation!\");\r\ + \n \$SendTelegram2 ({ origin=\$ScriptName; chatid=(\$Chat->\"id\ + \"); silent=false; \\\r\ + \n replyto=(\$Message->\"message_id\"); threadid=\$ThreadId; \ + \\\r\ + \n subject=([ \$SymbolForNotification \"speech-balloon\" ] . \ + \"Telegram Chat\"); \\\r\ + \n message=([ \$SymbolForNotification \"gear\" ] . \"Command:\ + \\n\" . \$Command . \"\\n\\n\" . \\\r\ + \n [ \$SymbolForNotification \"cross-mark\" ] . \"The comma\ + nd failed syntax validation!\") });\r\ + \n }\r\ + \n }\r\ + \n } else={\r\ + \n :local MessageText (\"Received a message from untrusted contact \ + \" . \\\r\ + \n [ \$IfThenElse ([ :len (\$From->\"username\") ] = 0) \"without\ + \_username\" (\"'\" . \$From->\"username\" . \"'\") ] . \\\r\ + \n \" (ID \" . \$From->\"id\" . \") in update \" . \$UpdateID . \ + \"!\");\r\ + \n :if (\$Command ~ (\"^! *\" . [ \$EscapeForRegEx \$Identity ] . \ + \"\\\$\")) do={\r\ + \n \$LogPrint warning \$ScriptName \$MessageText;\r\ + \n \$SendTelegram2 ({ origin=\$ScriptName; chatid=(\$Chat->\"id\"\ + ); silent=false; \\\r\ + \n replyto=(\$Message->\"message_id\"); threadid=\$ThreadId; \\\ + \r\ + \n subject=([ \$SymbolForNotification \"speech-balloon\" ] . \"\ + Telegram Chat\"); \\\r\ + \n message=(\"You are not trusted.\") });\r\ + \n } else={\$LogPrint info \$ScriptName \$MessageText}\r\ + \n }\r\ + \n } else={\$LogPrint debug \$ScriptName (\"Already handled update \" .\ + \_\$UpdateID . \".\")}\r\ + \n }\r\ + \n :set TelegramChatOffset ([ :pick \$TelegramChatOffset 1 3 ], \\\r\ + \n [ \$IfThenElse (\$UpdateID >= \$TelegramChatOffset->2) (\$UpdateID +\ + \_1) (\$TelegramChatOffset->2) ]);\r\ + \n} do={:global ExitError; \$ExitError \$ExitOK [ :jobname ] \$Err}\r\ + \n" +add dont-require-permissions=no name=mod/AM-TG-Notifications owner=\ + mod/AM-TG-Notifications 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=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 +add comment="Telegram Chat Bot" interval=30s name=mod/AM-TG-Bot on-event=\ + "/system/script/run mod/AM-TG-Bot;" 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/20260430/20260430124001-Diff-Config.rsc b/MikroNUC/history/20260430/20260430124001-Diff-Config.rsc new file mode 100644 index 0000000..9137420 --- /dev/null +++ b/MikroNUC/history/20260430/20260430124001-Diff-Config.rsc @@ -0,0 +1,15 @@ +3212a3213,3226 +> 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 -- 2.52.0