Age | Commit message (Expand) | Author | Files | Lines |
2021-02-18 | global: drop script 'global-wait'•••All scripts wait for the global functions on their own now.
change-44 | Christian Hesse | 1 | -1/+1 |
2021-02-18 | email-backup: no example address, complain if missing | Christian Hesse | 1 | -2/+2 |
2021-02-16 | global-functions: send (and re-send) e-mails from queuechange-43 | Christian Hesse | 1 | -1/+1 |
2021-01-22 | global-functions: $LogPrintExit: notify about colorful outputchange-42 | Christian Hesse | 1 | -1/+1 |
2021-01-22 | global-functions: $LogPrintExit: make colorful output configurable | Christian Hesse | 1 | -0/+2 |
2021-01-01 | update copyright for 2021 | Christian Hesse | 1 | -1/+1 |
2020-12-18 | global-functions: $ScriptInstallUpdate: implement migration mechanism•••Reset $SentConfigChangesNotification and rerun $ScriptInstallUpdate
to test...
:set SentConfigChangesNotification
$ScriptInstallUpdate
change-41 | Christian Hesse | 1 | -1/+1 |
2020-12-18 | check-certificates: make the certificate renewal time configurablechange-40 | Christian Hesse | 1 | -1/+2 |
2020-12-18 | ipv6-update: notify about interface specific address list entrieschange-39 | Christian Hesse | 1 | -1/+1 |
2020-12-17 | import Let's Encrypt certificate "R3"change-38 | Christian Hesse | 1 | -1/+1 |
2020-11-26 | log-forward: add parenthesis in filter expression•••Looks like this works without parenthesis in RouterOS,
let's add it anyway.
| Christian Hesse | 1 | -1/+1 |
2020-11-17 | netwatch-notify: notify about changeschange-37 | Christian Hesse | 1 | -1/+1 |
2020-11-13 | log-forward: do not exclude topic 'script'•••We have justified severity for some log message, so do no longer exclude
topic 'script'.
| Christian Hesse | 1 | -1/+1 |
2020-11-13 | log-forward: do not forward own e-mail logs•••Revert the last change, instead just ignore messages that were generated
by log-forward, with "Log Forwarding" in subject.
| Christian Hesse | 1 | -2/+2 |
2020-11-12 | log-forward: do not forward e-mail logs•••This could cause infinite loop if the mail server does not recover...
| Christian Hesse | 1 | -1/+1 |
2020-11-01 | check-routeros-update: support installing updates automatically if seen in ne...change-36 | Christian Hesse | 1 | -1/+3 |
2020-10-23 | mode-button: make LED configurablechange-35 | Christian Hesse | 1 | -1/+3 |
2020-10-23 | ospf-to-leds: introduce script to visualize ospf state via ledschange-34 | Christian Hesse | 1 | -1/+1 |
2020-10-16 | check-health: add deviation on temperature recovery threshold•••This helps against notification flooding.
change-33 | Christian Hesse | 1 | -1/+3 |
2020-10-16 | mode-button: merge mode-button-event & mode-button-schedulerchange-32 | Christian Hesse | 1 | -1/+1 |
2020-10-15 | global-config: do not define mail addresses by default | Christian Hesse | 1 | -2/+4 |
2020-10-13 | global-functions: $SendTelegram: use fixed-width font...•••... but give configuration to opt-out.
change-31 | Christian Hesse | 1 | -1/+3 |
2020-09-28 | log-forward: notify on rate limitchange-30 | Christian Hesse | 1 | -1/+1 |
2020-09-25 | log-forward: add filter on log message textchange-29 | Christian Hesse | 1 | -1/+4 |
2020-09-25 | dhcp-to-dns: notify on acting on all bound leaseschange-28 | Christian Hesse | 1 | -1/+1 |
2020-09-25 | global-functions: notify on Telegram queuechange-27 | Christian Hesse | 1 | -1/+1 |
2020-09-25 | netwatch-notify: notify on configurable check count thresholdchange-26 | Christian Hesse | 1 | -1/+1 |
2020-09-18 | extend magic pattern with "by RouterOS"•••This matches the string included in export.
| Christian Hesse | 1 | -1/+1 |
2020-08-07 | notify about support for dhcp server name in fqdnchange-25 | Christian Hesse | 1 | -1/+1 |
2020-08-07 | dhcp-to-dns: add support for dhcp server name in fqdn | netztrip | 1 | -0/+1 |
2020-07-17 | global-functions: introduce and use $SymbolForNotificationchange-24 | Christian Hesse | 1 | -1/+4 |
2020-07-15 | add 'log-forward', drop 'early-errors'change-23 | Christian Hesse | 1 | -1/+4 |
2020-07-14 | global-config: dropped $ScriptUpdatesIgnore, use ignore flag in commentchange-22 | Christian Hesse | 1 | -4/+2 |
2020-07-14 | notify about auto patch updates in check-routeros-updatechange-21 | Christian Hesse | 1 | -1/+1 |
2020-07-14 | notify about hooks in netwatch-notifychange-20 | Christian Hesse | 1 | -1/+1 |
2020-07-14 | notify about options in script commentschange-19 | Christian Hesse | 1 | -1/+1 |
2020-07-14 | notify about $IPCalcchange-18 | Christian Hesse | 1 | -1/+1 |
2020-07-14 | notify about early-errorschange-17 | Christian Hesse | 1 | -1/+1 |
2020-07-07 | check-routeros-update: support installing patch updates automatically | Christian Hesse | 1 | -0/+2 |
2020-07-03 | dhcp-to-dns: allow to configure 'dhcp' prefix in zone | Christian Hesse | 1 | -0/+1 |
2020-06-19 | explicitly name the license•••Copyright (C) 2013-2020 Christian Hesse <mail@eworm.de>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
https://www.gnu.org/licenses/#GPL
https://www.gnu.org/licenses/gpl.html
https://www.gnu.org/licenses/gpl.md
| Christian Hesse | 1 | -0/+1 |
2020-03-27 | ask for GitHub and GitLab starschange-16 | Christian Hesse | 1 | -1/+1 |
2020-03-27 | Notify about new documentation!change-15 | Christian Hesse | 1 | -1/+1 |
2020-03-27 | link global-{config,config-overlay,functions} to main README | Christian Hesse | 1 | -0/+1 |
2020-03-23 | completely replace script-updates with $ScriptInstallUpdatechange-14 | Christian Hesse | 1 | -1/+1 |
2020-03-20 | certificate-renew-issued: support auto-export with given passphrases | Christian Hesse | 1 | -0/+4 |
2020-03-03 | bridge-port-to-default: use $ParseKeyValueStore...•••... and unbreak last commit removing delay (69352c90).
This requires a change in configuration syntax. Change this...
comment="default:br-local, alt:br-guest"
to...
comment="default=br-local, alt=br-guest"
change-13 | Christian Hesse | 1 | -1/+1 |
2020-02-04 | global-config: drop $ScriptUpdatesConfigChangesIgnore•••Comment or remove $GlobalConfigVersion in global-config-overlay
to disable change notifications.
change-12 | Christian Hesse | 1 | -3/+1 |
2020-01-29 | README: update instructions to use $ScriptInstallUpdatechange-11 | Christian Hesse | 1 | -1/+1 |
2020-01-01 | update copyright for 2020 | Christian Hesse | 1 | -1/+1 |
2019-10-22 | check-health: decrease default threshold for voltage | Christian Hesse | 1 | -1/+1 |
2019-10-14 | check-health: make threshold for voltage configurablechange-10 | Christian Hesse | 1 | -2/+4 |
2019-09-12 | introduce global-config-overlaychange-9 | Christian Hesse | 1 | -1/+1 |
2019-08-30 | script-updates: add donation hint in configuration warning notificationchange-8 | Christian Hesse | 1 | -1/+8 |
2019-08-30 | use shorter url for my repository | Christian Hesse | 1 | -1/+1 |
2019-08-27 | add script 'check-health'•••This may be incomplete... Please report if you have missing PSUs,
ttemperature sensors, whatever.
change-7 | Christian Hesse | 1 | -1/+9 |
2019-07-19 | add script 'upload-backup'change-6 | Christian Hesse | 1 | -1/+7 |
2019-07-19 | global-config: move config for email-backup•••Signed-off-by: Christian Hesse <mail@eworm.de>
| Christian Hesse | 1 | -4/+5 |
2019-06-14 | backup: split off cloud-backup•••Currently backup to MikroTik cloud is pretty unreliable and script can
not catch errors at runtime. Looks like this does not change any time
soon (Ticket#2019052022003204).
So let's just split off the cloud backup to make sure email backup works
as expected.
change-5 | Christian Hesse | 1 | -2/+1 |
2019-04-05 | global-config: change duplicate word from daily psk | Christian Hesse | 1 | -1/+1 |
2019-04-02 | script-updates: add option to ignore global-config changeschange-4 | Christian Hesse | 1 | -1/+2 |
2019-04-01 | check-certificates: support multiple passphraseschange-3 | Christian Hesse | 1 | -2/+5 |
2019-01-04 | update-tunnelbroker: get tunnelbroker config from interface comment | Christian Hesse | 1 | -7/+0 |
2019-01-04 | global: variable names are CamelCase••• ___ _ ___ __
/ _ )(_)__ _ / _/__ _/ /_
/ _ / / _ `/ / _/ _ `/ __/
/____/_/\_, / /_/ \_,_/\__/
_ __ /___/ _ __
| | / /___ __________ (_)___ ____ _/ /
| | /| / / __ `/ ___/ __ \/ / __ \/ __ `/ /
| |/ |/ / /_/ / / / / / / / / / / /_/ /_/
|__/|__/\__,_/_/ /_/ /_/_/_/ /_/\__, (_)
/____/
RouterOS has some odd behavior when it comes to variable names. Let's
have a look at the interfaces:
[admin@MikroTik] > / interface print where name=en1
Flags: D - dynamic, X - disabled, R - running, S - slave
# NAME TYPE ACTUAL-MTU L2MTU
0 RS en1 ether 1500 1598
That looks ok. Now we use a script:
{ :local interface "en1";
/ interface print where name=$interface; }
And the result...
[admin@MikroTik] > { :local interface "en1";
{... / interface print where name=$interface; }
Flags: D - dynamic, X - disabled, R - running, S - slave
# NAME TYPE ACTUAL-MTU L2MTU
0 RS en1 ether 1500 1598
... still looks ok.
We make a little modification to the script:
{ :local name "en1";
/ interface print where name=$name; }
And the result:
[admin@MikroTik] > { :local name "en1";
{... / interface print where name=$name; }
Flags: D - dynamic, X - disabled, R - running, S - slave
# NAME TYPE ACTUAL-MTU L2MTU
0 RS en1 ether 1500 1598
1 S en2 ether 1500 1598
2 S en3 ether 1500 1598
3 S en4 ether 1500 1598
4 S en5 ether 1500 1598
5 R br-local bridge 1500 1598
Ups! The filter has no effect!
That happens whenever the variable name ($name) matches the property
name (name=).
And another modification:
{ :local type "en1";
/ interface print where name=$type; }
And the result:
[admin@MikroTik] > { :local type "en1";
{... / interface print where name=$type; }
Flags: D - dynamic, X - disabled, R - running, S - slave
# NAME TYPE ACTUAL-MTU L2MTU
Ups! Nothing?
Even if the variable name ($type) matches whatever property name (type=)
things go wrong.
The answer from MikroTik support (in Ticket#2019010222000454):
> This is how scripting works in RouterOS and we will not fix it.
To get around this we use variable names in CamelCase. Let's hope
Mikrotik never ever introduces property names in CamelCase...
*fingers crossed*
| Christian Hesse | 1 | -39/+39 |
2019-01-03 | global-{config,functions}: move variables, make independent | Christian Hesse | 1 | -7/+1 |
2019-01-03 | script-updates: add configuration versioning | Christian Hesse | 1 | -0/+4 |
2019-01-02 | rename script 'check-lte-firmware-update' -> 'check-lte-firmware-upgrade'•••That's the correct wording from commands..
| Christian Hesse | 1 | -1/+1 |
2019-01-02 | update-tunnelbroker: move configuration to global-config...•••... and get the external ip address from cloud.
Signed-off-by: Michael Gisbers <michael@gisbers.de>
Signed-off-by: Christian Hesse <mail@eworm.de>
| Michael Gisbers | 1 | -0/+7 |
2019-01-02 | update copyright for 2019 | Christian Hesse | 1 | -1/+1 |
2018-12-20 | check-certificates: support auto-renew of certificates | Christian Hesse | 1 | -0/+5 |
2018-12-19 | update-gre-address: remove settings from global-config•••Instead read infos from gre interface comment.
| Christian Hesse | 1 | -5/+0 |
2018-12-19 | ipv6-update: remove settings from global-config•••Instead make it more robust by reading comments.
| Christian Hesse | 1 | -4/+0 |
2018-12-18 | email-backup: support cloud backup | Christian Hesse | 1 | -0/+1 |
2018-12-14 | add script 'check-lte-firmware-update' | Christian Hesse | 1 | -0/+1 |
2018-11-28 | global-functions: add identity tag in $SendNotification•••... and send subject in telegram message.
| Christian Hesse | 1 | -1/+1 |
2018-11-26 | global-config: add identity tag | Christian Hesse | 1 | -1/+1 |
2018-11-13 | global-config: sort sms-action alphabetically | Christian Hesse | 1 | -2/+2 |
2018-11-13 | global-config: add more examples for mode button and sms-action | Christian Hesse | 1 | -3/+5 |
2018-10-10 | global-config: default for telegram is empty strings...•••... to make sure the api is not flooded with invalid requests.
| Christian Hesse | 1 | -2/+4 |
2018-10-09 | global-functions: add function to notify via e-mail and telegram | Christian Hesse | 1 | -0/+5 |
2018-10-09 | global-functions: move daily psk secrets to global-config | Christian Hesse | 1 | -2/+16 |
2018-10-09 | make GeneratePSK a global function | Christian Hesse | 1 | -1/+3 |
2018-10-09 | add global-functions | Christian Hesse | 1 | -0/+1 |
2018-10-04 | add script 'bridge-port-toggle'•••... to toggle between configuration 'default' and 'alt'.
| Christian Hesse | 1 | -0/+1 |
2018-10-04 | bridge-port-to-default: support different configurations•••Just add something like this to your bridge ports:
comment="default:br-ext,alt:br-intern"
| Christian Hesse | 1 | -0/+3 |
2018-10-04 | global-config: add missing semicolons | Christian Hesse | 1 | -5/+5 |
2018-09-27 | start scripts with a magic token / shebang | Christian Hesse | 1 | -1/+1 |
2018-09-13 | fix typos | Christian Hesse | 1 | -1/+1 |
2018-09-13 | sms-action: move configuration to global-config | Christian Hesse | 1 | -0/+7 |
2018-09-10 | add scripts mode-button-{event,scheduler} | Christian Hesse | 1 | -0/+8 |
2018-09-05 | check-routeros-update: enable auto update for safe version | Christian Hesse | 1 | -0/+5 |
2018-08-30 | check-routeros-update: resend notification if version changes | Christian Hesse | 1 | -1/+1 |
2018-08-27 | script-updates: add support for url suffix•••This allows to fetch from different branch...
| Christian Hesse | 1 | -0/+1 |
2018-08-24 | add empty comment at first line...•••... for better formatting in export.
| Christian Hesse | 1 | -0/+1 |
2018-08-06 | add script 'gps-track' | Christian Hesse | 1 | -0/+3 |
2018-07-10 | script-updates: always accept updates from file | Christian Hesse | 1 | -3/+2 |
2018-07-09 | global-config: script-updates url examples for github and gitlab | Christian Hesse | 1 | -0/+2 |
2018-07-09 | script-updates: support fetch from url | Christian Hesse | 1 | -0/+6 |
2018-07-05 | add scripts | Christian Hesse | 1 | -0/+42 |