Microtik скрипт контроля состояния подключения 2 провайдера

:local PingCount 3
:local Google 8.8.8.8
:local Yandex 9.9.9.9
:local mail  94.100.180.201
:local countloss 0
:local i 0; :while ($i < 30) do={
:local ResultGoogleMAX [/ping count=$PingCount $Google interface=ether1]
:local ResultYandexMAX [/ping count=$PingCount $Yandex interface=ether1]
:local ResultMailMAX [/ping count=$PingCount $mail interface=ether1]
:local ResultGoogleLTK [/ping count=$PingCount $Google interface=ether6]
:local ResultYandexLTK [/ping count=$PingCount $Yandex interface=ether6]
:local ResultMailLTK [/ping count=$PingCount $mail interface=ether6]

:local MainIfInetLTKOk false;
:set MainIfInetLTKOk (($ResultGoogleLTK + $ResultYandexLTK + $ResultMailLTK) >= (2 * $PingCount))
:put "MainIfInetLTKOk=$MainIfInetLTKOk"
if (!$MainIfInetLTKOk) do={
/log error "Bad connect LTK"
}
:local MainIfInetMAXOk false;
:set MainIfInetMAXOk (($ResultGoogleMAX + $ResultYandexMAX + $ResultMailMAX) >= (2 * $PingCount))
:put "MainIfInetMAXOk=$MainIfInetMAXOk"
if (!$MainIfInetMAXOk) do={
/log error "Bad connect Maximus"
}

:if (!$MainIfInetMAXOk and $MainIfInetLTKOk) do={
/ip route disable [find where comment~"ISP1 maximus"]
/log error "Bad connect Maximus"
#:set countloss ($countloss + 1)
}
:if ($MainIfInetMAXOk and $countloss < 3) do={
/ip route enable [find where comment~"ISP1 maximus"]
/log error "Repair connect Maximus"
}
:delay 180
:set i ($i + 1)
log error "$i"
}