Re: Mikrotik sms pri výpadku
Napsal: 16 Dec 2018 14:50
ano, takto jsem to udelal...Diky
Fórum československých telekomunikací
https://classic.ispforum.cz/
Kód: Vybrat vše
/system script
add name=ups owner=basty policy=\
ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source=":\
global vTime \"1\";\r\
\n:global vBeep \"1\";\r\
\n:global vNormal \"273\";\r\
\n:global vLow \"261\";\r\
\n:global vHigh \"281\";\r\
\n\r\
\n:global mailNormal \"0\";\r\
\n:global mailBat \"0\";\r\
\n:global mailLow \"0\";\r\
\n:global mailSendedNormal \"1\";\r\
\n:global mailSendedBat \"0\";\r\
\n:global mailSendedLow \"0\";\r\
\n:global vLoopNormal \"10\";\r\
\n:global vLoopBat \"0\";\r\
\n:global vLoopLow \"0\";\r\
\n\r\
\n:while (true) do={\r\
\n:global voltage [/system health get voltage];\r\
\n\r\
\n:if (\$voltage >= \$vNormal) do={\r\
\n :if (\$vLoopNormal = 10) do={\r\
\n### rychly zapis do logu pri nahozeni elektriny\r\
\n# :log info \"napajeni v poradku\";\r\
\n###\r\
\n :beep frequency=1200; :delay 50ms; :beep frequency=1500;\r\
\n }\r\
\n :if (\$vLoopNormal > (120 * \$vTime)) do={\r\
\n :if (\$mailSendedNormal = \"0\") do={\r\
\n :set mailSendedNormal \"1\";\r\
\n### akce za interval uvedeny v vTime x 2 pri zapnuti elektriny\r\
\n /tool e-mail send to=\"$EMAIL\" body=\"$LOKALITA\
\_elektrina v poradku\";\r\
\n###\r\
\n }\r\
\n### zapis do logu za interval uvedeny v vTime pri zapnute elektrine\r\
\n :log info \"$LOKALITA elektrina v poradku\";\r\
\n###\r\
\n :set vLoopNormal \"10\";\r\
\n }\r\
\n} else={\r\
\n :set vLoopNormal \"0\";\r\
\n :set mailSendedNormal \"0\";\r\
\n}\r\
\n\r\
\n:if (\$voltage >= \$vHigh) do={\r\
\n :if (\$vLoopNormal = 10) do={\r\
\n### rychly zapis do logu pri prebijeni baterii\r\
\n :log info \"$LOKALITA elektrina vysoke napeti na bateriich\";\
\r\
\n###\r\
\n :beep frequency=1200; :delay 100ms; :beep frequency=1500;\r\
\n }\r\
\n :if (\$vLoopNormal > (120 * \$vTime)) do={\r\
\n :if (\$mailSendedNormal = \"0\") do={\r\
\n :set mailSendedNormal \"1\";\r\
\n### akce za interval uvedeny v vTime x 2 pri zapnuti elektriny\r\
\n /tool e-mail send to=\"$EMAIL\" body=\"$LOKALITA\
\_elektrina vysoke napeti na bateriich\";\r\
\n###\r\
\n }\r\
\n### zapis do logu za interval uvedeny v vTime pri zapnute elektrine\r\
\n :log info \"prebijeni baterii\";\r\
\n###\r\
\n :set vLoopNormal \"10\";\r\
\n }\r\
\n} else={\r\
\n :set vLoopNormal \"0\";\r\
\n :set mailSendedNormal \"0\";\r\
\n}\r\
\n\r\
\n:if (\$voltage < \$vNormal && \$voltage > \$vLow) do={\r\
\n :if (\$vLoopBat = 10) do={\r\
\n### rychly zapis do logu pri prepnuti na baterii\r\
\n :log info \"napajeni z baterie\";\r\
\n###\r\
\n }\r\
\n :if (\$vLoopBat > (60 * \$vTime)) do={\r\
\n :if (\$mailSendedBat = \"0\") do={\r\
\n :set mailSendedBat \"1\";\r\
\n### akce za interval uvedeny v vTime pri prepnuti na baterii\r\
\n /tool e-mail send to=\"$EMAIL\" body=\"$LOKALITA \
elektrina napajeni z baterie\";\r\
\n###\r\
\n }\r\
\n### zapis do logu za interval uvedeny v vTime pri zapnute elektrine\r\
\n :log info \"napajeni z baterie\";\r\
\n###\r\
\n :set vLoopBat \"10\";\r\
\n }\r\
\n :if (\$vBeep = \"1\") do={:beep frequency=1500 length=3;}\r\
\n} else={\r\
\n :set vLoopBat \"0\";\r\
\n :set mailSendedBat \"0\";\r\
\n}\r\
\n\r\
\n:if (\$voltage <= \$vLow) do={\r\
\n :if (\$vLoopLow > (1 * \$vTime)) do={\r\
\n :if (\$mailSendedLow = \"0\") do={\r\
\n :set mailSendedLow \"1\";\r\
\n### akce za interval uvedeny v vTime pri nizkem napeti baterie\r\
\n /tool e-mail send to=\"$EMAIL\" body=\"$LOKALITA \
elektrina napajeni z baterie - nizke napeti\";\r\
\n###\r\
\n }\r\
\n :set vLoopLow \"10\";\r\
\n }\r\
\n### zapis do logu kazdych 10 sekund\r\
\n :log info \"napajeni z baterie - nizke napeti\";\r\
\n###\r\
\n :if (\$vBeep = \"1\") do={:beep frequency=4000 length=3;}\r\
\n} else={\r\
\n :set mailSendedLow \"0\";\r\
\n :set vLoopLow \"0\";\r\
\n}\r\
\n\r\
\n:set vLoopNormal (\$vLoopNormal + 10);\r\
\n:set vLoopBat (\$vLoopBat + 10);\r\
\n:set vLoopLow (\$vLoopLow + 10);\r\
\n:delay 10;\r\
\n}"