\r
:local SchedComment "Every 7 Day Check For Update and Backup send notification to EMail.";\r
:local SchedInterval "7d 00:00:00";\r
+:local SchedStartTime "03:41:27";\r
\r
# Function to add or edit schedulers for scripts, to ensure they are set up correctly\r
# How to use:\r
# Call this function with the following parameters:\r
# 1. $1 - Scheduler name (usually same as script name) [*]\r
-# 2. $2 - Comment (optional, default: "Scheduler for script: <name>") [**]\r
-# 3. $3 - Interval (e.g. "1d 00:00:00" (default is "1d")) [**]\r
+# 2. $2 - Interval (e.g. "1d 00:00:00" (default is "1d")) [**]\r
+# 3. $3 - Start Time (e.g. "03:41:27", default is current time) [**]\r
# 4. $4 - On Event command (e.g. "/system/script { run <name>; }" (default is "/system/script { run $SchedName; }")) [**]\r
# 5. $5 - Policy (e.g. "ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon" (default is the same)) [**]\r
# 6. $6 - Start Date (e.g. "jan/01/1970", default is current date) [**]\r
-# 7. $7 - Start Time (e.g. "03:41:27", default is current time) [**]\r
+# 7. $7 - Comment (optional, default: "Scheduler for script: <name>") [**]\r
+#\r
# Notes:\r
# * - Scheduler name is required, and is used to identify the scheduler to create or edit. It is usually the same as the script name ($ScriptName).\r
# ** - If optional parameters are not provided, default values will be used.\r
:set EditSchedulers do={\r
:global LogPrint;\r
:local SchedName [ :tostr $1 ];\r
- :local Comment [ :tostr $2 ];\r
- :if ([ :len $Comment ] = 0) do={:set Comment "Scheduler for script: $SchedName"};\r
- :local Interval [ :tostr $3 ];\r
+ :local Interval [ :tostr $2 ];\r
:if ([ :len $Interval ] = 0) do={:set Interval "1d"};\r
+ :local StartTime [ :tostr $3 ];\r
+ :if ([ :len $StartTime ] = 0) do={:set StartTime [get time]};\r
:local OnEvent [ :tostr $4 ];\r
:if ([ :len $OnEvent ] > 0) do={:set OnEvent "/system/script { run $SchedName; }"};\r
:local Policy [ :tostr $5 ];\r
:if ([ :len $Policy ] = 0) do={:set Policy "ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon"};\r
:local StartDate [ :tostr $6 ];\r
:if ([ :len $StartDate ] = 0) do={:set StartDate [get date]};\r
- :local StartTime [ :tostr $7 ];\r
- :if ([ :len $StartTime ] = 0) do={:set StartTime [get time]};\r
+ :local Comment [ :tostr $7 ];\r
+ :if ([ :len $Comment ] = 0) do={:set Comment "Scheduler for script: $SchedName"};\r
\r
:onerror Err {\r
# Check if scheduler exists, if not - create it\r
:if ([ /system/scheduler/get $SchedName start-time ] != $StartTime) do={\r
/system/scheduler/set $SchedName start-time=$StartTime;\r
}\r
- } do={$LogPrint error $0 ("Removing directory '" . $DirName . "' failed: " . $Err); :return false};\r
+ } do={$LogPrint error $0 (Failed to add/modify shceduler for '" . $SchedName . "' failed: " . $Err); :return false};\r
:return true;\r
}\r
\r