Commit graph

1860 commits

Author SHA1 Message Date
Christian Hesse
5f374c469a global-functions: $RequiredRouterOS: accept "alpha" in version string 2023-03-30 20:50:55 +02:00
Christian Hesse
779b3b8872 dhcp-to-dns: use better condition
The condition worked, but could match others (AAAA, NXDOMAIN, ...) as
well (though these should not exist).

The problem is that matching with `type=A` does not return any results.
For historical reasons A records have no type, thus can be matched with
`!type`. I opened an issue to fix this... (SUP-111312)

So let's assum `!type` works and `type=A` could become valid...
2023-03-29 15:49:41 +02:00
Christian Hesse
3d0107ed2c contrib/notification.html: add and load the script 2023-03-29 15:35:07 +02:00
Christian Hesse
9d823448f6 contrib/notification.html: fix warnings and errors
Checked with W3C validator: https://validator.w3.org/
2023-03-29 15:30:21 +02:00
Christian Hesse
814fb7197f Merge branch 'mkdir' into next 2023-03-29 12:13:59 +02:00
Christian Hesse
f2e8115272 global-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.
2023-03-28 15:43:49 +02:00
Christian Hesse
7fdec1abed global-functions: $MkDir: add extra block for indention...
... to make the next commit cleaner. No functional change.
2023-03-28 15:43:35 +02:00
Christian Hesse
d700dbc00e dhcp-to-dns: support host name from dhcp lease comment
The lease comment is supposed to be a human readable string... But we
could allow parsable information.
2023-03-28 12:05:47 +02:00
Christian Hesse
d3ca506394 global-functions: $MkDir: create tmpfs in local function 2023-03-28 12:05:47 +02:00
Christian Hesse
7293306f76 global-functions: $MkDir: return false on error 2023-03-28 12:05:47 +02:00
Christian Hesse
847f0a4564 global-functions: $MkDir: drop unused function 2023-03-28 12:05:47 +02:00
Christian Hesse
40f0d54ea8 dhcp-to-dns: add cname if host name appears for existing record 2023-03-28 11:42:58 +02:00
Christian Hesse
b22a84ed0f doc/dhcp-to-dns: mention A record and optional CNAME record 2023-03-28 11:42:58 +02:00
Christian Hesse
742c239629 sms-forward: check that the interface is running 2023-03-28 11:42:58 +02:00
Christian Hesse
4f722bc2c9 sms-forward: disable workaround for ROS 7.9beta4
The issue has been acknowledged by Mikrotik, but the cause is still
unknown as the sms code did not change since RouterOS 7.6...

Well, looks like the behavior changes again with RouterOS 7.9beta4, and
everything works as expected again. So disable the workaround there.
2023-03-24 20:11:29 +01:00
Christian Hesse
eab87e4d60 sms-forward: add workaround to fix removal of messages
Removal of messages is broken in RouterOS 7.8:

[admin@MikroTik] > /tool/sms/inbox/remove [ find ]
failure: Interface not running!

Of course the interface is running. Toggling the auto-erase setting
fixes this until next boot. So let's add a workaround...

Reported to support (SUP-110828), but not (yet) acknowledged. 🤨
2023-03-23 13:59:55 +01:00
Christian Hesse
0d4ab1fb3e Merge branch 'dhcp-to-dns' into next 2023-03-22 21:53:32 +01:00
Christian Hesse
295ccb570d dhcp-to-dns: update cname record on changed host name 2023-03-22 21:53:32 +01:00
Christian Hesse
b13a53531b dhcp-to-dns: just update the address
The other values *should* be unchanged...
2023-03-22 21:53:32 +01:00
Christian Hesse
c5c235246b dhcp-to-dns: add debug message on duplicate leases 2023-03-22 21:53:32 +01:00
Christian Hesse
8c728bb6ab dhcp-to-dns: do not update records based on host name 2023-03-22 21:53:32 +01:00
Christian Hesse
aac8709881 dhcp-to-dns: always create A record with mac address...
... and an optional CNAME with host name.
2023-03-22 21:53:32 +01:00
Christian Hesse
4a0f395fe1 dhcp-to-dns: split fqdn to host name and domain 2023-03-22 10:42:41 +01:00
Christian Hesse
3396aefac9 lease-script: add script name in order
This makes sure scripts with the same order can not conflict.
2023-03-22 10:13:24 +01:00
Christian Hesse
682a09c94b dhcp-to-dns: match comment on beginning of line 2023-03-22 10:13:24 +01:00
Christian Hesse
3d589def7d dhcp-to-dns: allow the matching separator string in name 2023-03-22 10:13:24 +01:00
Christian Hesse
58a42f4ece ipsec-to-dns: match comment on beginning of line 2023-03-22 09:00:28 +01:00
Christian Hesse
6e8c98e43d ipsec-to-dns: allow the matching separator string in name 2023-03-22 08:58:51 +01:00
Christian Hesse
524c1fc032 README: badge in style flat and with color 2023-03-20 17:36:31 +01:00
Christian Hesse
b66364d716 doc/netwatch-notify: prevent escaping code in hook by creating a script 2023-03-20 13:32:39 +01:00
Christian Hesse
f7962f5d79 doc/netwatch-notify: move hint on notification settings up 2023-03-20 12:35:34 +01:00
Christian Hesse
650c362ed9 netwatch-notify: support note in notification 2023-03-20 12:35:34 +01:00
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
56ae457d77 global-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.
2023-03-10 09:46:16 +01:00
Christian Hesse
7912091f63 lease-script: make sure not to match self 2023-03-07 22:26:01 +01:00
Christian Hesse
e902e3fdd5 global-functions: $ScriptInstallUpdate: make sure not to match self 2023-03-07 22:26: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
1e6e0646e2 add the notification generator 2023-03-06 21:07:58 +01:00
Christian Hesse
4ca8f83a52 ... and update the logo in notifications 2023-03-06 21:07:58 +01:00
Christian Hesse
154a036c64 use a new logo 2023-03-06 21:07:58 +01:00
Christian Hesse
d2d913ec19 check-routeros-update: allow to install all updates automatically...
... but with extra hurdle for more awareness of danger.

Let's not send a new notification, intentionally. This feature is
dangerous, and we should not advertise it.
2023-03-06 21:06:48 +01:00
Christian Hesse
a9741336b8 doc/check-routeros-update: update wording and details 2023-03-03 14:08:48 +01:00
Christian Hesse
b0595e53a5 global-functions: $MkDir: drop the compatibility workaround
If you are still running RouterOS 7.6 or older add this in your
global-config-overlay:

    :global ScriptUpdatesUrlSuffix "\?h=routeros-7.7~1";

... and remeber to revert that change once updated.
2023-02-26 22:27:14 +01:00
Christian Hesse
bfd1361f71 telegram-chat: get the uptime just once 2023-02-26 22:19:36 +01:00
Christian Hesse
02b447212d telegram-chat: ignore new messages after reboot
This script supports multiple devices, and sending offset to discard
messages is delayed to third fetch to make sure all devices get the
message.

This can cause trouble, though: Sending a device a reboot command can
make that device reboot multiple times 🥴 or - even worse - make it
enter an infinite boot loop 😳 if it is the only device.

So let's ignore first messages after reboot.
2023-02-26 22:19:36 +01:00
Christian Hesse
5ea892662f telegram-chat: send messages in reply 2023-02-26 22:19:30 +01:00
Christian Hesse
b963761874 mod/notification-telegram: support sending in reply 2023-02-24 12:13:44 +01:00
Christian Hesse
8213c5ed61 netwatch-notify: support sending silent notifications 2023-02-24 12:13:35 +01:00
Christian Hesse
fe0460ef6d INITIAL-COMMANDS: link to new paragraphs 2023-02-17 12:27:47 +01:00
Christian Hesse
da46c42d4a README: add a paragraph for scheduled automatic updates 2023-02-17 12:23:05 +01:00