Skip to content

Commit 9265e41

Browse files
Merge pull request #458 from ExtremeFiretop/ExtremeFiretop-NewNotifications
Script Update Email Notifications
2 parents 893767e + 006f1b2 commit 9265e41

File tree

2 files changed

+53
-13
lines changed

2 files changed

+53
-13
lines changed

MerlinAU.sh

Lines changed: 52 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,15 @@
44
#
55
# Original Creation Date: 2023-Oct-01 by @ExtremeFiretop.
66
# Official Co-Author: @Martinski W. - Date: 2023-Nov-01
7-
# Last Modified: 2025-Apr-12
7+
# Last Modified: 2025-Apr-14
88
###################################################################
99
set -u
1010

1111
## Set version for each Production Release ##
12-
readonly SCRIPT_VERSION=1.4.2
12+
readonly SCRIPT_VERSION=1.4.3
1313
readonly SCRIPT_NAME="MerlinAU"
1414
## Set to "master" for Production Releases ##
15-
SCRIPT_BRANCH="master"
15+
SCRIPT_BRANCH="dev"
1616

1717
##----------------------------------------##
1818
## Modified by Martinski W. [2024-Jul-03] ##
@@ -2830,7 +2830,7 @@ _DownloadScriptFiles_()
28302830
}
28312831

28322832
##------------------------------------------##
2833-
## Modified by ExtremeFiretop [2025-Apr-08] ##
2833+
## Modified by ExtremeFiretop [2025-Apr-14] ##
28342834
##------------------------------------------##
28352835
_SCRIPT_UPDATE_()
28362836
{
@@ -2840,6 +2840,9 @@ _SCRIPT_UPDATE_()
28402840
then
28412841
printf "\n${CYANct}Force downloading latest script version...${NOct}\n"
28422842
_CheckForNewScriptUpdates_ -quietcheck
2843+
if [ "$scriptUpdateNotify" != "0" ] && ! $isInteractive; then
2844+
_SendEMailNotification_ NEW_SCRIPT_UPDATE_FOUND
2845+
fi
28432846
if _CheckForNewGUIVersionUpdate_ "$SCRIPT_VERSION" "$DLRepoVersion"
28442847
then extraParam="install"
28452848
fi
@@ -2853,10 +2856,20 @@ _SCRIPT_UPDATE_()
28532856
_SetVersionSharedSettings_ local "$DLRepoVersion"
28542857
_SetVersionSharedSettings_ server "$DLRepoVersion"
28552858
fi
2859+
if ! "$isInteractive"
2860+
then
2861+
_SendEMailNotification_ SUCCESS_SCRIPT_UPDATE_STATUS
2862+
fi
28562863
sleep 1
28572864
_ReleaseLock_
28582865
exec "$ScriptFilePath" $extraParam
28592866
exit 0
2867+
else
2868+
if ! "$isInteractive"
2869+
then
2870+
_SendEMailNotification_ FAILED_SCRIPT_UPDATE_STATUS
2871+
fi
2872+
return 1
28602873
fi
28612874
return 0
28622875
fi
@@ -2899,7 +2912,7 @@ _SCRIPT_UPDATE_()
28992912
else
29002913
printf "\n\n${GRNct}Exiting Script Update Utility...${NOct}\n"
29012914
sleep 1
2902-
return
2915+
return 0
29032916
fi
29042917
elif [ "$scriptUpdateNotify" != "0" ]
29052918
then
@@ -2926,19 +2939,19 @@ _SCRIPT_UPDATE_()
29262939
exit 0
29272940
else
29282941
_WaitForEnterKey_
2929-
return
2942+
return 1
29302943
fi
29312944
else
29322945
printf "\n\n${GRNct}Exiting Script Update Utility...${NOct}\n"
29332946
sleep 1
2934-
return
2947+
return 0
29352948
fi
29362949
fi
29372950
}
29382951

2939-
##----------------------------------------##
2940-
## Modified by Martinski W. [2025-Mar-24] ##
2941-
##----------------------------------------##
2952+
##------------------------------------------##
2953+
## Modified by ExtremeFiretop [2025-Apr-14] ##
2954+
##------------------------------------------##
29422955
_CheckForNewScriptUpdates_()
29432956
{
29442957
local verStr DLScriptVerPath="${SCRIPT_VERPATH}.DL.tmp"
@@ -2986,7 +2999,6 @@ _CheckForNewScriptUpdates_()
29862999
then
29873000
scriptUpdateNotify="New script update available.
29883001
${REDct}v${SCRIPT_VERSION}${NOct} --> ${GRNct}v${DLRepoVersion}${NOct}"
2989-
29903002
if [ $# -gt 0 ] && [ "$1" = "-quietcheck" ]
29913003
then return 0
29923004
fi
@@ -3023,7 +3035,7 @@ _GetLatestFWUpdateVersionFromRouter_()
30233035
}
30243036

30253037
##------------------------------------------##
3026-
## Modified by ExtremeFiretop [2024-Dec-28] ##
3038+
## Modified by ExtremeFiretop [2024-Apr-14] ##
30273039
##------------------------------------------##
30283040
_CreateEMailContent_()
30293041
{
@@ -3097,6 +3109,34 @@ _CreateEMailContent_()
30973109
printf "\nThe F/W version that is currently installed:\n<b>${fwInstalledVersion}</b>\n"
30983110
} > "$tempEMailBodyMsg"
30993111
;;
3112+
SUCCESS_SCRIPT_UPDATE_STATUS)
3113+
if [ -s "$SCRIPT_VERPATH" ]
3114+
then
3115+
if verStr="$(_GetDLScriptVersion_ "$SCRIPT_VERPATH")"
3116+
then
3117+
NEW_SCRIPT_VERSION="$(echo "$verStr" | awk -F '|' '{print $1}')"
3118+
fi
3119+
fi
3120+
emailBodyTitle="MerlinAU Script Update Installed"
3121+
{
3122+
echo "The new MerlinAU Script Update version <b>${DLRepoVersion}</b> has been successfully installed on your <b>${MODEL_ID}</b> router."
3123+
printf "\nThe currently installed script version is: <b>${NEW_SCRIPT_VERSION}</b>\n"
3124+
} > "$tempEMailBodyMsg"
3125+
;;
3126+
FAILED_SCRIPT_UPDATE_STATUS)
3127+
emailBodyTitle="MerlinAU Script Update Failed"
3128+
{
3129+
echo "Failed to install the new MerlinAU Script Update version <b>${DLRepoVersion}</b> on your <b>${MODEL_ID}</b> router."
3130+
printf "\nThe installed script version remains: <b>${SCRIPT_VERSION}</b>\n"
3131+
} > "$tempEMailBodyMsg"
3132+
;;
3133+
NEW_SCRIPT_UPDATE_FOUND)
3134+
emailBodyTitle="New MerlinAU Script Update Available"
3135+
{
3136+
echo "A new MerlinAU Script Update version <b>${DLRepoVersion}</b> is now available for your <b>${MODEL_ID}</b> router."
3137+
printf "\nThe currently installed script version is: <b>${SCRIPT_VERSION}</b>\n"
3138+
} > "$tempEMailBodyMsg"
3139+
;;
31003140
STOP_FW_UPDATE_APPROVAL)
31013141
emailBodyTitle="WARNING"
31023142
if "$isEMailFormatHTML"

version.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1.4.2
1+
1.4.3

0 commit comments

Comments
 (0)