aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--check-lte-firmware-update32
-rw-r--r--global-config1
2 files changed, 33 insertions, 0 deletions
diff --git a/check-lte-firmware-update b/check-lte-firmware-update
new file mode 100644
index 0000000..0f62a0a
--- /dev/null
+++ b/check-lte-firmware-update
@@ -0,0 +1,32 @@
+#!rsc
+# RouterOS script: check-lte-firmware-update
+# Copyright (c) 2018 Christian Hesse <mail@eworm.de>
+#
+# check for LTE firmware update, send notification e-mails
+
+:global "identity";
+:global "sent-lte-firmware-update-notification";
+
+:global SendNotification;
+
+:foreach interface in=[ / interface lte find ] do={
+ :local intname [ / interface lte get $interface name ];
+ :do {
+ :local firmware [ / interface lte firmware-upgrade $interface once as-value ];
+
+ :if ($"sent-lte-firmware-update-notification" = ($firmware->"latest")) do={
+ :log debug ("Already sent the LTE firmware update notification for version " . \
+ ($firmware->"latest") . ".");
+ } else={
+ :if (($firmware->"installed") != ($firmware->"latest")) do={
+ $SendNotification ("LTE firmware update notification") \
+ ("A new firmware version " . ($firmware->"latest") . " is available for " . \
+ "LTE interface " . $intname . " on " . $identity . ".");
+ :set "sent-lte-firmware-update-notification" ($firmware->"latest");
+ }
+ }
+ } on-error={
+ :log debug ("Could not get latest LTE firmware version for interface " . \
+ $intname . ".");
+ }
+}
diff --git a/global-config b/global-config
index cff8974..f29d5a2 100644
--- a/global-config
+++ b/global-config
@@ -100,5 +100,6 @@
# Do *NOT* change these!
:global "sent-routeros-update-notification" "-";
+:global "sent-lte-firmware-update-notification" "-";
:global "identity" [ / system identity get name ];
/ system script run global-functions;