:local ScriptName [ :jobname ];\r
\r
:global LogPrint;\r
+:global EditSchedulers;\r
:global OSUpdateMode;\r
\r
-# Add this Script scheduler\r
-:if ([ :len [ /system/scheduler/find where name=$ScriptName ] ] = 0) do={\r
-:log warning ("System Scheduler for script: " . $ScriptName . " is NOT SET! Fix It Now!");\r
-:local OnEvent "/system/script/run $ScriptName;";\r
-:local Comment "Every Day Check For Update Local Issued Certificates.";\r
-#/system/scheduler/add name=$ScriptName comment=$Comment start-time=startup interval=1d on-event=$OnEvent;\r
-}\r
+# :local Comment "Every 7 Day Check For Update and Backup send notification to EMail.";\r
+# :local Interval "7d 00:00:00";\r
+# :local StartTime "03:41:27";\r
+# :local StartDate "jan/01/1970";\r
+# :local Policy "ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon";\r
+# :set ExitOK true;\r
+# :error false;\r
\r
+:set EditSchedulers do={ on-error Err {\r
+ :global LogPrint;\r
+ :local SchedName [ :tostr $1 ];\r
+ :local OnEvent [ :tostr $2 ];\r
+ :if ([ :len $OnEvent ] > 0) do={:set OnEvent "/system/script { run $SchedName; }"};\r
+ :local Comment [ :tostr $3 ];\r
+ :if ([ :len $Comment ] = 0) do={:set Comment "Scheduler for script: $SchedName"};\r
+ :local Interval [ :tostr $4 ];\r
+ :if ([ :len $Interval ] = 0) do={:set Interval "1d"};\r
+ :local StartTime [ :tostr $5 ];\r
+ :if ([ :len $StartTime ] = 0) do={:set StartTime [get time]};\r
+ :local StartDate [ :tostr $6 ];\r
+ :if ([ :len $StartDate ] = 0) do={:set StartDate [get date]};\r
+ :local Policy [ :tostr $7 ];\r
+ :if ([ :len $Policy ] = 0) do={:set Policy "ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon"};\r
\r
-# Add this Script scheduler\r
-:set ScripsSchedulers do={ o}\r
-:local OnEvent "/system/script { run $ScriptName; }";\r
-:local Comment "Every 7 Day Check For Update and Backup send notification to EMail.";\r
-:local Interval "7d 00:00:00";\r
-:local StartTime "03:41:27";\r
-:local StartDate "jan/01/1970";\r
-:local Policy "ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon";\r
+} do={\r
# Check if scheduler exists, if not - create it\r
-:if ([ :len [ /system/scheduler/find where name=$ScriptName ] ] = 0) do={\r
- $LogPrint warning $ScriptName ("System Scheduler for script: " . $ScriptName . " is NOT SET! Fix It Now!");\r
- /system/scheduler/add name=$ScriptName on-event=$OnEvent comment=$Comment interval=$Interval policy=$Policy start-time=$StartTime start-date=$StartDate;\r
- :set ExitOK true;\r
- :error false;\r
+:if ([ :len [ /system/scheduler/find where name=$SchedName ] ] = 0) do={\r
+ $LogPrint warning $SchedName ("System Scheduler for script: " . $SchedName . " is NOT SET! Fix It Now!");\r
+ /system/scheduler/add name=$SchedName on-event=$OnEvent comment=$Comment interval=$Interval policy=$Policy start-time=$StartTime start-date=$StartDate;\r
}\r
# Check if scheduler parameters are correct, if not - fix them\r
-:if ([ /system/scheduler/get $ScriptName on-event ] != $OnEvent) do={\r
- /system/scheduler/set $ScriptName on-event=$OnEvent;\r
+:if ([ /system/scheduler/get $SchedName on-event ] != $OnEvent) do={\r
+ /system/scheduler/set $SchedName on-event=$OnEvent;\r
}\r
-:if ([ /system/scheduler/get $ScriptName comment ] != $Comment) do={\r
- /system/scheduler/set $ScriptName comment=$Comment;\r
+:if ([ /system/scheduler/get $SchedName comment ] != $Comment) do={\r
+ /system/scheduler/set $SchedName comment=$Comment;\r
}\r
-:if ([ /system/scheduler/get $ScriptName interval ] != $Interval) do={\r
- /system/scheduler/set $ScriptName interval=$Interval;\r
+:if ([ /system/scheduler/get $SchedName interval ] != $Interval) do={\r
+ /system/scheduler/set $SchedName interval=$Interval;\r
}\r
-:if ([ /system/scheduler/get $ScriptName start-time ] != $StartTime) do={\r
- /system/scheduler/set $ScriptName start-time=$StartTime;\r
+:if ([ /system/scheduler/get $SchedName start-time ] != $StartTime) do={\r
+ /system/scheduler/set $SchedName start-time=$StartTime;\r
}\r
-:if ([ /system/scheduler/get $ScriptName start-date ] != $StartDate) do={\r
- /system/scheduler/set $ScriptName start-date=$StartDate;\r
+:if ([ /system/scheduler/get $SchedName start-date ] != $StartDate) do={\r
+ /system/scheduler/set $SchedName start-date=$StartDate;\r
}\r
-:if ([ /system/scheduler/get $ScriptName policy ] != $Policy) do={\r
- /system/scheduler/set $ScriptName policy=$Policy;\r
+:if ([ /system/scheduler/get $SchedName policy ] != $Policy) do={\r
+ /system/scheduler/set $SchedName policy=$Policy;\r
}\r
+} do={:global ExitOnError; $ExitOnError $0 $Err}\r
}\r
\r
# Add global Function OSUpdateMode\r