aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Expand)AuthorFilesLines
2023-02-07backup-upload: support uploading global-config-overlayGravatar Christian Hesse1-2/+24
2023-02-07backup-email: support sending global-config-overlayGravatar Christian Hesse1-1/+13
2023-02-07global-config: new option to backup global-config-overlayGravatar Christian Hesse1-0/+1
2023-02-04telegram-chat: handle exceeded file read sizeGravatar Christian Hesse1-1/+2
2023-02-03telegram-chat: no need to :put ...•••... a simple change to root dir is sufficient. Gravatar Christian Hesse1-2/+2
2023-02-03telegram-chat: log with severity debug only...•••... as failed request are quite common. Gravatar Christian Hesse1-1/+1
2023-02-03telegram-chat: delay confirmation of updates•••Several devices can communicate with the same bot, and we want all of them to receive their updates. However this can be tricky, as... * ... sometimes internet connection can be unreliable or saturated. * ... device can be busy with long running command. * ... the Telegram bot api servers seem to implement what ever kind of rate limiting. Anybody can give details? So let's confirm the update id after third request only. 😁 This gives delayed devices some extra chances to catch up. Gravatar Christian Hesse1-6/+8
2023-02-03telegram-chat: log warning only when trying to activateGravatar Christian Hesse1-2/+5
2023-02-03telegram-chat: handle missing usernameGravatar Christian Hesse1-1/+3
2023-02-02backup-email: wait for the mail to be sentGravatar Christian Hesse1-0/+10
2023-02-02telegram-chat: discard messages without textGravatar Christian Hesse1-1/+1
2023-02-02telegram-chat: allow to modify the time to wait for command•••For now this is a hidden settings... Do we want this to be documented? Gravatar Christian Hesse1-1/+3
2023-02-02global-functions: $WaitForFile: use delay instead of iterationsGravatar Christian Hesse2-6/+7
2023-02-02telegram-chat: reply with a hint when untrusted...•••... but only when activating via identity. Gravatar Christian Hesse1-1/+6
2023-02-02telegram-chat: always reply to origin chatGravatar Christian Hesse2-3/+4
2023-02-02mod/notification-telegram: support sending to specific chatidGravatar Christian Hesse1-1/+2
2023-02-01doc/telegram-chat: give an example on how to work around command runtimeGravatar Christian Hesse1-0/+7
2023-02-01doc/telegram-chat: add hint on output sizeGravatar Christian Hesse1-0/+6
2023-02-01telegram-chat: modify text if no output availableGravatar Christian Hesse1-1/+2
2023-02-01telegram-chat: also give a hint on failed syntax validation•••... and drop the warning in log instead. Gravatar Christian Hesse1-1/+3
2023-02-01telegram-chat: ... and give a hint on failureGravatar Christian Hesse1-1/+4
2023-02-01telegram-chat: handle error in command...Gravatar Christian Hesse1-1/+2
2023-02-01telegram-chat: give a hint if command is still runningGravatar Christian Hesse1-2/+3
2023-02-01doc/telegram-chat: add hint on command runtimeGravatar Christian Hesse1-0/+6
2023-02-01doc/telegram-chat: warn about changing group idGravatar Christian Hesse1-0/+3
2023-01-31doc/telegram-chat: allow bots to receive messages in a groupGravatar Christian Hesse1-0/+6
2023-01-31daily-psk: make qr-code url configurablechange-92Gravatar Christian Hesse6-4/+9
2023-01-31check-routeros-update: drop check for cap•••This becomes complicated with legacy wireless and wifiwave2 package, old and new CAPsMAN. Let's just drop the check. change-91Gravatar Christian Hesse5-11/+2
2023-01-31introduce telegram-chat•••Druvis from Mikrotik produced a video "MikroTik Telegram bot - Chat with your Router?". He shows his script to chat with a Router via Telegram bot to send it commands: https://youtu.be/KLX6j3sLRIE This script is kind of limited and has several issues... 🥴 Let's make it robust, usable, multi-device capable and just fun! 😁 (Sadly Mikrotik has a policy to not allow links in Youtube comments. Thus my comment with several hints was removed immediately. If anybody is in contact with Druvis... Please tell him about this script!) change-90Gravatar Christian Hesse9-1/+222
2023-01-31global-functions: $WaitForFile: allow to give iterations...•••... to increase timeout. Every iteration is about 100ms. Gravatar Christian Hesse1-1/+3
2023-01-26check-certificates: handle decryption failures and warn•••If a download succeeds at least one of the given passphrases is expected to decrypt a key in the file. Gravatar Christian Hesse1-1/+10
2023-01-26global-functions: $LogPrintExit2: always print the message...•••... even on error. Not sure why and when this broke. Gravatar Christian Hesse1-5/+5
2023-01-24update list of contributorsGravatar Christian Hesse1-0/+1
2023-01-23check-certificates: make the warning time configurablechange-89Gravatar Christian Hesse5-2/+7
2023-01-23doc/check-certificates: document the renew timeGravatar Christian Hesse1-0/+1
2023-01-23global-functions: $MkDir: catch error on creating tmpfsGravatar Christian Hesse1-1/+7
2023-01-23global-functions: $MkDir: create with reasonable tmpfs-max-size•••Giving no tmpfs-max-size breaks with RouterOS 7.8beta2, where a size limit is enforced. routeros-7.8beta2Gravatar Christian Hesse1-1/+1
2023-01-22daily-psk: fixes for CAPsMANGravatar Christian Hesse2-6/+9
2023-01-20check-health: notify about new featureschange-88Gravatar Christian Hesse2-1/+2
2023-01-20check-health: silently exit without health readings...•••... but after checking CPU load and free RAM. Gravatar Christian Hesse1-11/+11
2023-01-20check-health: monitor free RAM•••---- ✂️ ---- 🗃️📉️ Health warning: free RAM The available free RAM on MikroTik is at 18% (47MiB)! ---- ✂️ ---- 🗃️📈️ Health recovery: free RAM The available free RAM on MikroTik increased to 65% (168MiB). ---- ✂️ ---- Gravatar Christian Hesse10-8/+36
2023-01-20check-health: monitor CPU load•••---- ✂️ ---- 🧮️📈️ Health warning: CPU load The average CPU load on MikroTik is at 76%! ---- ✂️ ---- 🧮️📉️ Health recovery: CPU load The average CPU load on MikroTik decreased to 64%. ---- ✂️ ---- Gravatar Christian Hesse10-7/+30
2023-01-20global-functions: $RequiredRouterOS: check for valid version stringGravatar Christian Hesse1-0/+6
2023-01-20global-functions: use new functionality for version checkGravatar Christian Hesse1-3/+2
2023-01-20global-functions: $ScriptInstallUpdate: add a version check for scripts•••New RouterOS releases bring new features, and thus new syntax. Installing a new script on old RouterOS results in syntax errors. We want to give clear warning messages, so by adding an extra comment into the script... # requires RouterOS, version=7.8beta3 ... installing on unsupported RouterOS version is mitigated. Gravatar Christian Hesse1-10/+19
2023-01-20lease-script: use $GrepGravatar Christian Hesse1-7/+4
2023-01-20global-functions: implement $Grep...•••... that returns the first line that matches a pattern. Gravatar Christian Hesse1-0/+21
2023-01-20log-forward: cache the result of $LogForwardFilterLogForwarding•••Looks like the function is called for every message to match otherwise. 😳 Gravatar Christian Hesse1-1/+2
2023-01-20doc/log-forward: add tips and tricksGravatar Christian Hesse1-0/+12
2023-01-18doc/log-forward: add some more detailsGravatar Christian Hesse1-5/+20
2023-01-17ipsec-to-dns: handle "CN=" from peer's id•••This was missing in commit bff6689b103287f44c573e3134b9b9a64c36c0a8 and cause the dns entry to be delete and re-created over and over again. routeros-7.6-3Gravatar Christian Hesse1-2/+4
2023-01-12global-functions: $MkDir: no early continue for dir "tmpfs"...•••... as we want a RAM disk. Gravatar Christian Hesse1-1/+1
2023-01-12doc/daily-psk: drop the start-date from schedulerGravatar Christian Hesse1-2/+2
2023-01-12doc/daily-psk: add missing bits for CAPsMANGravatar Christian Hesse1-5/+9
2023-01-12global-functions: $ScriptInstallUpdate: handle config version decrease...•••... and log a warning. Gravatar Christian Hesse1-1/+7
2023-01-12mod/notification-*: support extra text (or emojis 🚀) in notification tagschange-87Gravatar Christian Hesse6-7/+16
2023-01-11mod/notification-email: split off generation of subjectGravatar Christian Hesse1-10/+17
2023-01-11mod/notification-email: move $QuotedPrintable (from global-functions)•••This is used for e-mail only... Gravatar Christian Hesse2-37/+37
2023-01-11log-forward: do not declare unused functionGravatar Christian Hesse1-1/+0
2023-01-11log-forward: generate filter in mod/notification-emailGravatar Christian Hesse2-8/+20
2023-01-11use arrows with emoji representation•••We had... ◀ Go back to main README ▲ Go back to top ... and switch to... ⬅️ Go back to main README ⬆️ Go back to top Gravatar Christian Hesse50-148/+148
2023-01-11README: install custom script from routeros-scripts-customGravatar Christian Hesse2-4/+1
2023-01-10README: add linked custom scripts & modulesGravatar Christian Hesse1-0/+20
2023-01-10doc/sms-forward: take care of harmful commands in hooksGravatar Christian Hesse1-0/+7
2023-01-10update list of contributorsGravatar Christian Hesse1-0/+1
2023-01-10sms-forward: support hookschange-86Gravatar Anatoly Bubenkov5-1/+60
2023-01-09doc/sms-forward: reorder configurationGravatar Christian Hesse1-3/+4
2023-01-02.gitignore: ignore folder settings fileGravatar Anatoly Bubenkov1-0/+3
2023-01-02.gitignore: ignore files created by patch commandGravatar Christian Hesse1-1/+3
2023-01-02.gitignore: add commentsGravatar Christian Hesse1-0/+5
2023-01-02backup-upload: keep floppy emoji for failureGravatar Christian Hesse1-1/+1
2023-01-02backup-cloud: keep floppy emoji for failureGravatar Christian Hesse1-1/+1
2023-01-02update copyright for 2023Gravatar Christian Hesse62-62/+62
2022-12-19README: RouterOS v7 path syntax•••Missed one in b6ddc5968e7a3393bb6e9b0c0ccf96379efc62b4... Gravatar Christian Hesse1-1/+1
2022-12-13backup-upload: switch path to tmpfsGravatar Christian Hesse1-2/+3
2022-12-13backup-email: switch path to tmpfsGravatar Christian Hesse1-2/+3
2022-12-13backup-upload: create directory laterGravatar Christian Hesse1-4/+4
2022-12-13backup-email: create directory laterGravatar Christian Hesse1-4/+4
2022-12-13global-functions: $MkDir: create a tmpfs (RAM disk)...•••... if the path starts with "tmpfs/". This helps to mitigate flash wear. routeros-7.7rc1Gravatar Christian Hesse1-0/+10
2022-12-13global-functions: $MkDir: create directories recursivelyGravatar Christian Hesse1-14/+30
2022-12-13global-functions: $MkDir: rename internal variableGravatar Christian Hesse1-10/+10
2022-12-13global-functions: $MkDir: fail if non-directory path existsGravatar Christian Hesse1-0/+5
2022-12-12global-functions: check RouterOS version before loading modulesGravatar Christian Hesse1-3/+3
2022-12-06global-functions: $SymbolByUnicodeName: append variation selector-16...•••... to specify that the preceding character should be displayed with emoji presentation. https://unicode-table.com/en/FE0F/ Gravatar Christian Hesse1-1/+1
2022-11-29global-functions: introduce $IsMacLocallyAdministered...•••... and use it in $GetMacVendor. Gravatar Christian Hesse1-1/+11
2022-11-25netwatch-notify: support type https-get•••... which was introduced in RouterOS 7.7beta8. routeros-7.7beta8Gravatar Christian Hesse1-1/+1
2022-11-22global-functions: $IsTimeSync: no cloud on x86Gravatar Christian Hesse1-2/+3
2022-11-22global-functions: $IsTimeSync: no cloud with CHR free licenseGravatar Christian Hesse1-0/+5
2022-11-22doc/mod/notification-email: mention correct timeGravatar Christian Hesse1-0/+2
2022-11-22mod/notification-email: put status in scheduler commentGravatar Christian Hesse1-4/+4
2022-11-22mod/notification-email: set scheduler interval earlier•••... to make sure the checks are not re-run every second. Gravatar Christian Hesse1-0/+4
2022-11-22mod/notification-email: reference scheduler from variableGravatar Christian Hesse1-4/+5
2022-11-22global-functions: $ScriptLock: use shorter random string•••... but with all characters from alphabet with $GetRandom20CharAlNum. Gravatar Christian Hesse1-2/+2
2022-11-22global-functions: $MkDir: use shorter random string•••... but with all characters from alphabet with $GetRandom20CharAlNum. Gravatar Christian Hesse1-2/+2
2022-11-17README: link to Github pull requestsGravatar Christian Hesse1-1/+3
2022-11-17mod/notification-email: make sure the scheduler interval is never zeroGravatar Christian Hesse1-1/+1
2022-11-17mod/notification-email: check that attachment existsGravatar Christian Hesse1-1/+8
2022-11-17mod/notification-email: convert to array earlierGravatar Christian Hesse1-2/+2
2022-11-17mod/notification-email: fix typoGravatar Christian Hesse1-1/+1
2022-10-31README: copy *relevant* configuration onlyGravatar Christian Hesse3-2/+2