aboutsummaryrefslogtreecommitdiffstats
path: root/global-functions.rsc
AgeCommit message (Expand)AuthorFilesLines
2024-01-31global-functions: introduce $CleanNameGravatar Christian Hesse1-0/+19
2024-01-31global-functions: $MkDir: drop declaration of unused functionsGravatar Christian Hesse1-2/+0
2024-01-31global-functions: $IsDNSResolving: drop declaration of unused functionGravatar Christian Hesse1-2/+0
2024-01-30global-functions: $ScriptInstallUpdate: warn just once...•••... for every script on required RouterOS version. Gravatar Christian Hesse1-1/+2
2024-01-30global-functions: use :jobname to get script nameGravatar Christian Hesse1-1/+1
2024-01-30send a warning on storage sizechange-118Gravatar Christian Hesse1-1/+1
2024-01-30packages-update: support deferred reboot on auto-update•••Closes #56 change-117Gravatar Christian Hesse1-1/+1
2024-01-30global-functions: $RandomDelay: always scale to ms...•••... to randomize in friction of unit. This requires :tonsec from RouterOS 7.12. routeros-7.12-1Gravatar Christian Hesse1-2/+3
2024-01-29global-functions: $RandomDelay: allow zero time, return immediatelyGravatar Christian Hesse1-0/+4
2024-01-29global-functions: $RandomDelay: name the parametersGravatar Christian Hesse1-1/+4
2024-01-20global-functions: $SymbolByUnicodeName: log warning on missing nameGravatar Christian Hesse1-0/+7
2024-01-20global-functions: $SymbolByUnicodeName: name the parameterGravatar Christian Hesse1-1/+3
2024-01-18global-functions: log successful loadingGravatar Christian Hesse1-0/+5
2024-01-18global-functions: $LogPrintOnce: support exitGravatar Christian Hesse1-1/+2
2024-01-16global-functions: $HexToNum: use :tonumGravatar Christian Hesse1-7/+5
2024-01-08global-functions: $CertificateDownload: move delay up•••We still had cases where fetch misbehaves... But this was permanent. Perhaps we should not touch the certificate too early... Gravatar Christian Hesse1-1/+1
2024-01-01update copyright for 2024Gravatar Christian Hesse1-1/+1
2023-12-22global-functions: $GetMacVendor: get new certificate•••The service now uses: GTS CA 1P5 -> GTS Root R1 Gravatar Christian Hesse1-1/+1
2023-12-05mention the donation hint...change-116Gravatar Christian Hesse1-1/+3
2023-12-05celebrating ✨⭐ 1.000 stars ⭐✨ on Github!change-115Gravatar Christian Hesse1-1/+2
2023-12-04global-functions: $FormatLine: use $CharacterMultiplyGravatar Christian Hesse1-1/+3
2023-12-04global-functions: $AlignRight: use $CharacterMultiplyGravatar Christian Hesse1-1/+2
2023-12-04global-functions: introduce $CharacterMultiplyGravatar Christian Hesse1-0/+10
2023-12-04global-functions: $DeviceInfo: add SNMP location and contactGravatar Christian Hesse1-1/+6
2023-11-30global-functions: introduce $MINGravatar Christian Hesse1-0/+7
2023-11-30global-functions: introduce $MAXGravatar Christian Hesse1-0/+7
2023-11-30global-functions: $SymbolByUnicodeName: rename up-arrow -> arrow-up•••... so arrows are grouped in case we add more. Gravatar Christian Hesse1-1/+1
2023-11-30global-functions: $SymbolForNotification: properly append space to alt textGravatar Christian Hesse1-2/+3
2023-11-23global-functions: introduce $AlignRightGravatar Christian Hesse1-0/+14
2023-11-15global-functions: introduce $HumanReadableNumGravatar Christian Hesse1-0/+31
2023-11-15notify about parted scripts for wifi packagechange-114Gravatar Christian Hesse1-1/+1
2023-11-09global-functions: drop $Read•••... which is no longer required now that RouterOS 7.12beta1 provides /terminal/ask. Gravatar Christian Hesse1-6/+0
2023-11-09mod/notification-matrix: introduce $SetupMatrix{Authenticate,JoinRoom} for setup•••Well, now that we have a JSON parser... Let's improve the user experience a bit. change-113Gravatar Christian Hesse1-1/+1
2023-11-09mod/ssh-keys-import: calculate fingerprint...•••... and store it in key-owner, which is descriptive only. This requires RouterOS 7.12beta1 for the 'transform' property for ':convert' command. routeros-7.12beta1-2change-112Gravatar Christian Hesse1-1/+1
2023-11-07global-functions: $ParseDate: drop code for old format...•••... and increase required RouterOS. We should probably wait some time before merging this: Even current versions have some hidden places with old format: [admin@MikroTik] > /system/resource/print [...] version: 7.10.2 (stable) build-time: Jul/12/2023 09:45:11 [...] (Though this is written with capital letter and fails anyway...) Something similar goes for `/ip/neighbor`, where format depends on remote devices. Does anybody need to parse this? routeros-7.10beta5-2Gravatar Christian Hesse1-10/+1
2023-10-27dhcp-to-dns: allow multiple records for one mac address•••Now that we can have differnt name suffixes via networks it makes sense to allow multiple records for one mac address. Also update the wording for messages... change-111Gravatar Christian Hesse1-1/+1
2023-10-27global-functions: introduce $LogPrintOnce•••This does work just like $LogPrintExit2, except it acts just *once* for each message, until device is rebooted. Gravatar Christian Hesse1-0/+23
2023-10-26global: switch eworm.de to new certificate chain (E1 / ISRG Root X2)•••old chain: R3 / ISRG Root X1 new chain: E1 / ISRG Root X2 No user interaction or migration is required for existing installations as we install 'E1' and 'ISRG Root X2' for some time already. Gravatar Christian Hesse1-4/+0
2023-10-25global-functions: $ParseJson: prevent infinite loop...•••... which could happen on corrupted or truncated input. Gravatar Christian Hesse1-2/+4
2023-10-19global-functions: $ParseJson: return array as ... array 😜•••No need to assemble the string here, just to split it again later. Gravatar Christian Hesse1-8/+15
2023-10-17global-functions: $ScriptInstallUpdate: use $EitherOrGravatar Christian Hesse1-4/+2
2023-10-17global-functions: $ScriptInstallUpdate: restore indention•••No functional change. Gravatar Christian Hesse1-22/+21
2023-10-17global-functions: $ScriptInstallUpdate: drop support for scripts from storage•••Nobody ever used that, no? (Well, except me - just before I implemented fetching. 😜) change-110Gravatar Christian Hesse1-10/+2
2023-10-17global-functions: $ScriptInstallUpdate: rename variableGravatar Christian Hesse1-4/+4
2023-10-17global-functions: $ScriptInstallUpdate: use pushpin as bulletGravatar Christian Hesse1-2/+1
2023-10-17global-functions: $SymbolForNotification: support fallback without symbolsGravatar Christian Hesse1-1/+1
2023-10-17introduce mod/notification-ntfy...•••... for sending notifications via Ntfy (https://ntfy.sh/). TODO: use proper formatting once supported in Android app: https://github.com/binwiederhier/ntfy/issues/889 change-109Gravatar Christian Hesse1-1/+1
2023-10-17log-forward: use colorful bullets to indicate severitychange-108Gravatar Christian Hesse1-1/+4
2023-10-17global-functions: $ScriptInstallUpdate: http-header-field expects an arrayGravatar Christian Hesse1-4/+4
2023-10-17global-functions: $CertificateDownload: http-header-field expects an arrayGravatar Christian Hesse1-1/+1
2023-10-16global-functions: $ParseJson: properly handle arrayGravatar Christian Hesse1-0/+13
2023-10-16global-functions: $ParseJson: prepare elif-workaroundGravatar Christian Hesse1-1/+4
2023-10-16global-functions: $ParseJson: use temporary variablesGravatar Christian Hesse1-3/+5
2023-10-16mod/notification-telegram: drop support for non-fixed width fontchange-107Gravatar Christian Hesse1-1/+1
2023-10-16telegram-chat: act on reply from selfchange-106-1Gravatar Christian Hesse1-1/+1
2023-10-16global-functions: $ParseJson: handle outher curly bracketsGravatar Christian Hesse1-1/+6
2023-10-16global-functions: $ParseJson: drop superfluous substractionGravatar Christian Hesse1-1/+1
2023-10-16global-functions: make $ParseJson globalGravatar Christian Hesse1-0/+29
2023-09-18global-functions: split off $FormatMultiLines ...•••... to format multiple lines from an array. Gravatar Christian Hesse1-7/+21
2023-09-15global-functions: $EitherOr: properly handle time valuesGravatar Christian Hesse1-0/+3
2023-08-31check-routeros-update: support update from specific neighbor(s)•••... by matching the identity property. change-105Gravatar Christian Hesse1-1/+1
2023-08-18global-functions: prepare user-agent for fetch in global variableGravatar Christian Hesse1-6/+6
2023-08-15news and migration for wifiwave2change-104Gravatar Christian Hesse1-1/+1
2023-06-28global-functions: $MkDir: drop extra block, restore indention•••We had this to make the previous commit cleaner. No functional change. Gravatar Christian Hesse1-14/+13
2023-06-28global-functions: $MkDir: drop old code with smb workaround...•••... and increase required RouterOS. routeros-7.9beta4-5Gravatar Christian Hesse1-41/+2
2023-06-28hotspot-to-wpa-cleanup: drop hard-coded server name, find by commentchange-103Gravatar Christian Hesse1-1/+1
2023-06-28hotspot-to-wpa: support non-local users•••This has some limitations, though: The password is not known and additional configuration can not be given in user's comment. change-102Gravatar Christian Hesse1-1/+1
2023-06-27global-functions: escaping question mark is no longer requiredGravatar Christian Hesse1-3/+3
2023-06-27global-functions: $IsTimeSync: calculate with uptime, drop schedulerGravatar Christian Hesse1-5/+6
2023-06-22global-functions: $IsTimeSync: reset ntp client when "waiting"•••Every now and then the ntp client stays in status "waiting" forever... This happens if the server answers, but is not accurate enough. Unlike with connection failure the address is not rotated. (SUP-120012) Let's reset it... Should help with a pool address (like pool.ntp.org) at least. Gravatar Christian Hesse1-0/+13
2023-06-13introduce fw-addr-listschange-101Gravatar Christian Hesse1-1/+1
2023-06-13global-functions: $CertificateDownload: add proper version in user agentGravatar Christian Hesse1-3/+4
2023-06-01global-functions: $CertificateDownload: add a delay•••For any reason the imported certificate(s) is/are not available for fetch command immediately. Let's add a delay here... It should not hurt as certificates are not imported that often. Gravatar Christian Hesse1-0/+1
2023-06-01global-functions: $ScriptInstallUpdate: handle scripts with DOS line endings•••If the script is converted to DOS line endings (\r\n) on the device it was no longer handled by $ScriptInstallUpdate. Let's change that... Gravatar Christian Hesse1-1/+1
2023-05-10global-functions: $ParseDate: handle date in ISO standard format•••This was introduced with RouterOS 7.10beta5... https://xkcd.com/1179/ 😜 routeros-7.10beta5-1Gravatar Christian Hesse1-0/+6
2023-05-10global-functions: introduce $ParseDate•••The extra indention is intended for a later change. Gravatar Christian Hesse1-0/+13
2023-04-26mod/ssh-keys-import: make ssh-keys-import a modulerouteros-7.9beta4-3change-100Gravatar Christian Hesse1-1/+1
2023-04-24dhcp-to-dns: get domain from dhcp server's network definitionchange-99Gravatar Christian Hesse1-1/+1
2023-04-24global-functions: $DeviceInfo: use $FormatLineGravatar Christian Hesse1-15/+16
2023-04-24global-functions: introduce $FormatLineGravatar Christian Hesse1-0/+27
2023-04-07check-certificates: try all SANs for downloadchange-98Gravatar Christian Hesse1-1/+1
2023-03-30global-functions: $VersionToNum: support "alpha" in version stringGravatar Christian Hesse1-3/+6
2023-03-30global-functions: $RequiredRouterOS: accept "alpha" in version stringGravatar Christian Hesse1-1/+1
2023-03-28global-functions: $MkDir: make directory by adding file•••This is new functionality in RouterOS 7.9beta4, where new file can be added with `/file/add ...`. This also creates directories for the full path. routeros-7.9beta4-2Gravatar Christian Hesse1-1/+18
2023-03-28global-functions: $MkDir: add extra block for indention...•••... to make the next commit cleaner. No functional change. Gravatar Christian Hesse1-30/+32
2023-03-28global-functions: $MkDir: create tmpfs in local functionGravatar Christian Hesse1-10/+22
2023-03-28global-functions: $MkDir: return false on errorGravatar Christian Hesse1-1/+1
2023-03-28global-functions: $MkDir: drop unused functionGravatar Christian Hesse1-1/+0
2023-03-22dhcp-to-dns: always create A record with mac address...•••... and an optional CNAME with host name. change-97Gravatar Christian Hesse1-1/+1
2023-03-20netwatch-notify: support note in notificationchange-96Gravatar Christian Hesse1-1/+1
2023-03-10global-functions: $ScriptInstallUpdate: add proper version in user agent•••This allows me to identify what RouterOS versions are run on devices fetching my scripts, which may helps to decide what incompatible changes to push. Gravatar Christian Hesse1-2/+5
2023-03-07global-functions: $ScriptInstallUpdate: make sure not to match selfGravatar Christian Hesse1-1/+1
2023-03-07rename scripts and add file extension ".rsc"•••No functional change for the user... The migration is done automatically. change-95Gravatar Christian Hesse1-0/+1292