daily-psk: adopt syntax changes

RouterOS 7.15beta8 came with this change:

*) wifi - show inherited properties with "print" command (replaces "actual-configuration") and added "print config" for showing only configured values;

While the old code is bad syntax with RouterOS 7.15, the new code is
valid for older RouterOS, but produces different (and more or less
unexpected) results. 🥴

Let's use the new code, and add a check on the RouterOS version.
With old RouterOS this now sends the notification even if the interface
is disabled.
This commit is contained in:
Christian Hesse 2024-05-15 14:15:54 +02:00
parent 545fb5583a
commit ca7a592dfd
4 changed files with 6 additions and 2 deletions

View file

@ -23,6 +23,7 @@
:global FormatLine;
:global LogPrint;
:global RequiredRouterOS;
:global ScriptLock;
:global SendNotification2;
:global SymbolForNotification;

View file

@ -23,6 +23,7 @@
:global FormatLine;
:global LogPrint;
:global RequiredRouterOS;
:global ScriptLock;
:global SendNotification2;
:global SymbolForNotification;

View file

@ -24,6 +24,7 @@
:global FormatLine;
:global LogPrint;
:global RequiredRouterOS;
:global ScriptLock;
:global SendNotification2;
:global SymbolForNotification;
@ -85,7 +86,7 @@
/interface/wireless/access-list/set $AccList private-pre-shared-key=$NewPsk;
:if ([ :len [ /caps-man/actual-interface-configuration/find where configuration.ssid=$Ssid !disabled ] ] > 0) do={
:if ([ :len [ /interface/wifi/actual-configuration/find where configuration.ssid=$Ssid ] ] > 0) do={
:if ([ $RequiredRouterOS $ScriptName "7.15beta8" false ] = false || [ :len [ /interface/wifi/find where configuration.ssid=$Ssid !disabled ] ] > 0) do={
:if ([ :len [ /interface/wireless/find where name=$IntName !disabled ] ] = 1) do={
:if ($Seen->$Ssid = 1) do={
$LogPrint debug $ScriptName ("Already sent a mail for SSID " . $Ssid . ", skipping.");

View file

@ -23,6 +23,7 @@
:global FormatLine;
:global LogPrint;
:global RequiredRouterOS;
:global ScriptLock;
:global SendNotification2;
:global SymbolForNotification;
@ -71,7 +72,7 @@
$LogPrint info $ScriptName ("Updating daily PSK for " . $Ssid . " to " . $NewPsk . " (was " . $OldPsk . ")");
/interface/wifi/access-list/set $AccList passphrase=$NewPsk;
:if ([ :len [ /interface/wifi/actual-configuration/find where configuration.ssid=$Ssid ] ] > 0) do={
:if ([ $RequiredRouterOS $ScriptName "7.15beta8" false ] = false || [ :len [ /interface/wifi/find where configuration.ssid=$Ssid !disabled ] ] > 0) do={
:if ($Seen->$Ssid = 1) do={
$LogPrint debug $ScriptName ("Already sent a mail for SSID " . $Ssid . ", skipping.");
} else={