Commit graph

106 commits

Author SHA1 Message Date
Christian Hesse 3b5026ea8d drop dummy scripts used for migration
This now causes expected warnings on first run of $ScriptInstallUpdate.
The migration still works, as we keep `global-config.changes` and
`global-functions`.
2023-03-10 09:58:01 +01:00
Christian Hesse a832fd04ef rename scripts and add file extension ".rsc"
No functional change for the user... The migration is done
automatically.
2023-03-07 22:26:01 +01:00
Christian Hesse c48509683c check-health: wording: load -> utilization
The load is defined as something different...

https://en.wikipedia.org/wiki/Load_(computing)

So let's update the wording and use 'utilization' instead.

---- ✂️ ----
🧮📈️ Health warning: CPU utilization

The average CPU utilization on MikroTik is at 76%!
---- ✂️ ----
🧮📉️ Health recovery: CPU utilization

The average CPU utilization on MikroTik decreased to 64%.
---- ✂️ ----
2023-02-14 20:24:06 +01:00
Christian Hesse 62707dc549 ipv6-update: support host addresses in address-list 2023-02-10 11:36:12 +01:00
Christian Hesse ba730708f5 notify about backup for global-config-overlay 2023-02-07 21:19:57 +01:00
Christian Hesse 63de875129 daily-psk: make qr-code url configurable 2023-01-31 17:27:15 +01:00
Christian Hesse cbc547332e check-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.
2023-01-31 17:27:15 +01:00
Christian Hesse 819c7294c6 introduce 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!)
2023-01-31 17:26:51 +01:00
Christian Hesse 555d0e8bfc check-certificates: make the warning time configurable 2023-01-23 17:46:03 +01:00
Christian Hesse e6c256cd4b check-health: notify about new features 2023-01-20 23:20:53 +01:00
Christian Hesse 47a657d25c mod/notification-*: support extra text (or emojis 🚀) in notification tags 2023-01-12 15:40:05 +01:00
Anatoly Bubenkov ea09a18d3f sms-forward: support hooks 2023-01-10 08:58:33 +01:00
Christian Hesse 2f774f723d update copyright for 2023 2023-01-02 23:49:26 +01:00
Christian Hesse bfe2cbf575 drop 'netwatch-syslog'
To filter in firewall you should use something like this:

/ip/firewall/filter/add action=reject chain=output out-interface-list=WAN port=514 protocol=udp reject-with=icmp-admin-prohibited;
/ip/firewall/filter/add action=reject chain=forward out-interface-list=WAN port=514 protocol=udp reject-with=icmp-admin-prohibited;
2022-09-25 22:18:44 +02:00
Christian Hesse eccc187014 introduce 'mod/notification-email', split off from global-functions 2022-09-25 22:10:05 +02:00
Christian Hesse a1606402d1 global-config: new setting to disable news and change notifications...
... and also drop the version from global-config and
global-config-overlay.
2022-07-06 21:46:52 +02:00
Christian Hesse 19103cd345 netwatch-notify: rename parameter: hostname -> name
Starting with RouterOS 7.4 the netwatch tool has been extended, it can
now do tcp and http probes. Rename the parameter for reasonable naming
with services.
2022-07-06 11:37:02 +02:00
Christian Hesse b3de1fad34 drop script 'rotate-ntp'
For RouterOS 6.x a separate package 'ntp' exists. This adds server
functionality, but allows ip addresses for the client only. I added the
script 'rotate-ntp' to update addresses from names...

Now with RouterOS 7.x there's no extra package and the limitation does
no longer exist. So let's just drop the script.

This adds migration code, that...
 * removes the script from configuration
 * removes a scheduler from configuration
 * sets the configured ntp pool name for ntp client
2022-06-15 16:39:49 +02:00
Christian Hesse 5e481a768b notify about freeze of routeros-v7 branch 2022-05-12 11:05:10 +02:00
Christian Hesse b6ddc5968e README: RouterOS v7 path syntax 2022-05-12 11:04:00 +02:00
Christian Hesse b996f00dd5 global-config.changes: RouterOS v7 path syntax 2022-05-10 16:03:19 +02:00
Christian Hesse 71b69fc189 introduce backup-partition 2022-03-30 18:24:14 +02:00
Christian Hesse d74aac8f6a doc/mod: notify about new documentation 2022-02-21 12:53:26 +01:00
Christian Hesse 3c358980cb introduce firmware-upgrade-reboot 2022-02-10 09:07:32 +01:00
Christian Hesse c6e581d4f9 netwatch-notify: allow to suppress notification on host down 2022-02-10 08:41:12 +01:00
Christian Hesse 5135a41332 global: notify about merging 'routeros-v7' into 'main' 2022-01-14 09:31:07 +01:00
Christian Hesse 491f53a8ce hotspot-to-wpa: support settings from template 2022-01-07 15:28:08 +01:00
Christian Hesse ed0135c613 Migrate configuration and send notification on renames 2022-01-06 08:19:58 +01:00
Christian Hesse 57c80dc2a4 introduce netwatch-dns 2022-01-03 10:00:16 +01:00
Christian Hesse 95e9820718 update copyright for 2022 2022-01-01 21:38:15 +01:00
Christian Hesse 40dea01670 README: changes for RouterOS v6 2021-12-13 11:36:03 +01:00
Christian Hesse dab04fd63e README: changes for RouterOS v7 2021-12-07 11:11:19 +01:00
Christian Hesse 2625cc09a5 check-health: support hard lower limit for voltage
... to detect slow decrease of voltage, for example with UPS.
2021-11-16 22:21:37 +01:00
Christian Hesse 185fe2c730 reintroduce global-wait 2021-11-16 22:21:37 +01:00
Christian Hesse 8fc88c73f8 shorten modules directory name (global-functions.d -> mod) 2021-11-15 22:18:10 +01:00
Christian Hesse f484e45b6a bridge-port-to-default -> global-functions.d/bridge-port-to 2021-11-15 22:18:10 +01:00
Christian Hesse b6215ba958 add global-functions.d/bridge-port-vlan 2021-11-12 16:09:35 +01:00
Christian Hesse 9295d06fe2 global-functions.d/inspectvar: add $InspectVar...
to inspect variables. This is useful for variables with (nested) arrays,
for example inspecting $NetwatchNotify (from netwatch-notify):

[admin@Mikrotik] > $InspectVar $NetwatchNotify
-type-> array
  -key-> quad-one
    -type-> array
      -key-> count
        -type-> num
        -value-> 0
      -key-> notified
        -type-> bool
        -value-> false
      -key-> parent
        -type-> nothing
      -key-> resolve-failed
        -type-> nothing
      -key-> since
        -type-> nothing
  -key-> example.com
    -type-> array
      -key-> count
        -type-> num
        -value-> 0
      -key-> notified
        -type-> bool
        -value-> false
      -key-> parent
        -type-> str
        -value-> quad-one
      -key-> resolve-failed
        -type-> nothing
      -key-> since
        -type-> nothing
2021-09-21 21:26:13 +02:00
Christian Hesse ce78d7d9e9 global-functions: notify about move of $IPCalc and $ScriptRunOnce to modules
Just install with...

$ScriptInstallUpdate global-functions.d/ipcalc

... and/or...

$ScriptInstallUpdate global-functions.d/scriptrunonce

... and use the functions as before.
2021-09-21 21:26:13 +02:00
Christian Hesse 483506b189 global-functions: introduce $ScriptRunOnce 2021-07-10 23:18:04 +02:00
Christian Hesse dc7fc0d385 finally remove old scripts 2021-07-09 12:46:03 +02:00
Christian Hesse bccb7c3452 netwatch-notify: implement pre-down hook 2021-07-09 12:46:03 +02:00
Michael Gisbers d5edcbd3b6 check-routeros-update: allow update for cap
If CAPsMAN is running on a device with just 16MB flash downloading the
packages is not possible (or at least lost at reboot). So allow a CAP to
update with opt-in.
2021-07-01 22:56:18 +02:00
Christian Hesse 1a404195d5 hotspot-to-wpa: add optional cleanup script 2021-06-23 15:15:16 +02:00
Christian Hesse f5b1f9cb97 celebrating the 1.000th commit - hooray! 2021-06-23 15:14:38 +02:00
Christian Hesse 64496d76c2 notify about tag in scripts 2021-06-23 10:26:49 +02:00
Christian Hesse de61c14c60 log-forward: implement reverse logic to include messages...
... even if a filter matches to exclude them. Let's have an example:

:global LogForwardFilter "(debug|info)";
:global LogForwardInclude "account";

This will forward everything about topic *account* (login, logout,
failed login, ...) - even with topic *info*.
2021-06-09 14:42:43 +02:00
Christian Hesse 50d1706a06 global-functions: make Telegram notifications a module 2021-06-08 21:07:25 +02:00
Michael Gisbers 8375673d93 global-functions: implement notifications via Matrix
Matrix is an open network for secure, decentralized communication - and
it has a web api.

A warning on message type: Using 'm.notice' breaks rendering on Element
for Android (no fixed width font) and does not pop up desktop
notification. Thus we use 'm.text'. Should be safe as we do not send the
messages in response to other messages.

https://matrix.org/
2021-06-08 21:07:25 +02:00
Christian Hesse 4427cabd0e update Let's Encrypt trust chain
Drop 'DST Root CA X3', use 'ISRG Root X1' instead. The migration code
makes sure that...

 * the intermediate certificate 'R3' is signed by 'ISRG Root X1'
 * 'ISRG Root X1' is self-signed, not cross-signed by 'DST Root CA X3'
 * 'DST Root CA X3' is finally gone
2021-05-18 16:33:35 +02:00