what's wrong with these scripts in 3.11?¿

Hi,

I’ve been using these scripts with previous versions of RouterOS, but with the newest version 3.11 it doesn’t like them…anyone can tell me why?

Script1


:if ([/system resource get uptime] >= 1w) do={/system reboot}

Script2


:global cpuarray;
:global highavgcpuload;
:global avgcpuload 0;
:local cpuload 0;
:local arraylen 0;
:local arraypos 0;
:local arraytot 0;
:local arraysize 20;

:set cpuload [/system resource get cpu-load];
:set cpuarray ([:toarray $cpuload] + $cpuarray);
:set cpuarray [:pick $cpuarray 0 $arraysize];

:set arraypos 0;
:set arraylen [:len $cpuarray];
:while ($arraypos < $arraylen) do={
:set arraytot ($arraytot + [:pick $cpuarray $arraypos]);
:set arraypos ($arraypos +1 )};

:set avgcpuload ($arraytot / [:len $cpuarray]);
:if ([:len $highavgcpuload] = 0) do={:set highavgcpuload $avgcpuload};
:if ($avgcpuload > $highavgcpuload) do={:set highavgcpuload $avgcpuload}

Thanks,

As an example when added the first script, it appears in the system without any code!!!

[admin@MikroTik] /system script> add name=reboot source={:if ([/system resource get uptime] >= 1w) do={/system reboot}}
[admin@MikroTik] /system script> print
Flags: I - invalid
0 I name=“reboot” owner=“admin” policy=ftp,reboot,read,write,policy,test,winbox,password,sniff run-count=0 source=“”

When added the second script, also the system doesn’t interprets the code at all:

[admin@MikroTik] /system script> add name=cpuload source={:global cpuarray; :global highavgcpuload; :global avgcpuload 0; :local cpuload 0; :local arraylen 0; :local arraypos 0; :local arraytot 0; :local arraysize 20; :set cpuload [/system resource get cpu-load]; :set cpuarray ([:toarray $cpuload] + $cpuarray); :set cpuarray [:pick $cpuarray 0 $arraysize]; :set arraypos 0; :set arraylen [:len $cpuarray]; :while ($arraypos < $arraylen) do={:set arraytot ($arraytot + [:pick $cpuarray $arraypos]); :set arraypos ($arraypos +1 )}; :set avgcpuload ($arraytot / [:len $cpuarray]); :if ([:len $highavgcpuload] = 0) do={:set highavgcpuload $avgcpuload}; :if ($avgcpuload > $highavgcpuload) do={:set highavgcpuload $avgcpuload}}

[admin@MikroTik] /system script> print Flags: I - invalid 0 I name=“reboot” owner=“admin” policy=ftp,reboot,read,write,policy,test,winbox,password,sniff run-count=0 source=“” 1 name=“cpuload” owner=“admin” policy=ftp,reboot,read,write,policy,test,winbox,password,sniff run-count=0 source=,0,0,0,0,0,20,1,0,0,

Could any guys of MikroTik explain what’s happening with this issue in RouterOS 3.11?¿?

Thanks,

This bug should be fixed in latest version.