From 9346df67d76d230a7de9381af465ac2a1d38e2f5 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Fri, 14 Dec 2018 23:04:18 +0100 Subject: add script 'check-lte-firmware-update' --- check-lte-firmware-update | 32 ++++++++++++++++++++++++++++++++ global-config | 1 + 2 files changed, 33 insertions(+) create mode 100644 check-lte-firmware-update 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 +# +# 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; -- cgit v1.2.3-54-g00ecf