mirror of
https://github.com/eworm-de/routeros-scripts
synced 2024-05-14 10:04:19 +02:00
Compare commits
4 commits
643f15a0b9
...
b286cb6803
Author | SHA1 | Date | |
---|---|---|---|
b286cb6803 | |||
872abbea7d | |||
860acffbdb | |||
e83154c9c3 |
|
@ -29,8 +29,8 @@ $ScriptLock $0;
|
|||
:global Identity;
|
||||
:global SentLteFirmwareUpgradeNotification;
|
||||
|
||||
:global CharacterReplace;
|
||||
:global FormatLine;
|
||||
:global IfThenElse;
|
||||
:global LogPrintExit2;
|
||||
:global ScriptFromTerminal;
|
||||
:global SendNotification2;
|
||||
|
@ -84,7 +84,9 @@ $ScriptLock $0;
|
|||
subject=([ $SymbolForNotification "sparkles" ] . "LTE firmware upgrade"); \
|
||||
message=("A new firmware version " . ($Firmware->"latest") . " is available for " . \
|
||||
"LTE interface " . $IntName . " on " . $Identity . ".\n\n" . \
|
||||
[ $FormatLine "Interface" [ $CharacterReplace ($Info->"manufacturer" . " " . $Info->"model") ("\"") "" ] ] . "\n" . \
|
||||
[ $IfThenElse ([ :len ($Info->"manufacturer") ] > 0) ([ $FormatLine "Manufacturer" ($Info->"manufacturer") ] . "\n") ] . \
|
||||
[ $IfThenElse ([ :len ($Info->"model") ] > 0) ([ $FormatLine "Model" ($Info->"model") ] . "\n") ] . \
|
||||
[ $IfThenElse ([ :len ($Info->"revision") ] > 0) ([ $FormatLine "Revision" ($Info->"revision") ] . "\n") ] . \
|
||||
"Firmware version:\n" . \
|
||||
[ $FormatLine " Installed" ($Firmware->"installed") ] . "\n" . \
|
||||
[ $FormatLine " Available" ($Firmware->"latest") ]); silent=true });
|
||||
|
|
|
@ -12,6 +12,7 @@ This script upgrades LTE firmware on compatible devices:
|
|||
* R11e-LTE-US
|
||||
* R11e-4G
|
||||
* R11e-LTE6
|
||||
* ... and more - probably what ever Mikrotik builds into their devices
|
||||
|
||||
A temporary scheduler is created to be independent from terminal. Thus
|
||||
starting the upgrade process over the broadband connection is supported.
|
||||
|
|
|
@ -79,7 +79,8 @@ $ScriptLock $0;
|
|||
:if ([ $IsDNSResolving ] = true) do={
|
||||
:do {
|
||||
:local Resolve [ :resolve ($HostInfo->"resolve") ];
|
||||
:if ($Resolve != $HostVal->"host") do={
|
||||
:if ($Resolve != $HostVal->"host" and \
|
||||
[ :len [ /ip/dns/cache/find where name=($HostInfo->"resolve") data=[ :tostr ($HostVal->"host") ] ] ] = 0) do={
|
||||
$LogPrintExit2 info $0 ("Name '" . $HostInfo->"resolve" . [ $IfThenElse \
|
||||
($HostInfo->"resolve" != $HostInfo->"name") ("' for " . $Type . " '" . \
|
||||
$HostInfo->"name") "" ] . "' resolves to different address " . $Resolve . \
|
||||
|
|
|
@ -24,13 +24,17 @@
|
|||
:set LTEFirmwareUpgrade;
|
||||
|
||||
/system/scheduler/remove ($1 . "-firmware-upgrade");
|
||||
/interface/lte/firmware-upgrade $1 upgrade=yes;
|
||||
:log info ("LTE firmware upgrade on '" . $1 . "' finished, waiting for reset.");
|
||||
:delay 240s;
|
||||
:local Firmware [ /interface/lte/firmware-upgrade $1 once as-value ];
|
||||
:if (($Firmware->"installed") != ($Firmware->"latest")) do={
|
||||
:log warning ("LTE firmware versions still differ. Resetting again...");
|
||||
/interface/lte/at-chat $1 input="AT+RESET";
|
||||
:do {
|
||||
/interface/lte/firmware-upgrade $1 upgrade=yes;
|
||||
:log info ("LTE firmware upgrade on '" . $1 . "' finished, waiting for reset.");
|
||||
:delay 240s;
|
||||
:local Firmware [ /interface/lte/firmware-upgrade $1 once as-value ];
|
||||
:if (($Firmware->"installed") != ($Firmware->"latest")) do={
|
||||
:log warning ("LTE firmware versions still differ. Resetting again...");
|
||||
/interface/lte/at-chat $1 input="AT+RESET";
|
||||
}
|
||||
} on-error={
|
||||
:log error ("LTE firmware upgrade on '" . $1 . "' failed.");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue