MikroTik Скрипты: Проверка обновления
Скрипт позволяет выполнить проверку на наличие обновлений для RouterOS и в случае их обнаружения отправки уведомления в Telegram.
1. Измените идентификатор устройства, чтобы лучше понять, какое устройство отправляет сообщение.
System -> Identity или /system identity set name=»WhiteHouseMikroTik»
2. Создайте скрипт для проверки обновлений RouterOS
Скрипту для Проверки обновления RouterOS требуются следующие разрешения : чтение, запись, политика, проверка.
System -> Scripts -> + -> Name: CheckUpdate -> Policy: read, write, test, policy
Код скрипта:
# Func: Telegram send message
:local TGSendMessage do={
:local tgUrl "https://api.telegram.org/bot$Token/sendMessage?chat_id= $ChatID&text=$Text&parse_mode=html&disable_web_page_preview=True";
/tool fetch http-method=get url=$tgUrl keep-result=no;
}
# Constants
:local TelegramBotToken "987654321:A1FJTVTAWod5wzGC2CLne6-PK4RFNSy-8GE";
:local TelegramChatID "687154523";
:local DeviceName /system identity get name;
:local TelegramMessageText "\F0\9F\9F\A2 <b> $DeviceName:</b> ";
# Check Update
:local MyVar /system package update check-for-updates as-value;
:local Chan ($MyVar -> "channel");
:local InstVer ($MyVar -> "installed-version");
:local LatVer ($MyVar -> "latest-version");
:if ($InstVer = $LatVer) do={
:set TelegramMessageText ($TelegramMessageText . "System is already up to date");
} else={
:set TelegramMessageText "$TelegramMessageText New version $LatVer is available! <a href=\"https://mikrotik.com/download/changelogs\">Changelogs</a>. Installed version $InstVer, chanell $Chan.";
$TGSendMessage Token=$TelegramBotToken ChatID=$TelegramChatID Text=$TelegramMessageText;
}
:log info $TelegramMessageText;
Если обновлений не найдено, сценарий выводит сообщение в журнал, что скрипт успешно работает.
3. Добавить запуск скрипта в расписание
System -> Schedule -> + -> Name:CheckUpdate – > Start Time: 07:00:00 -> Interval: 1d 00:00:00 -> Policy: read, write, policy, test /system script run CheckUpdate
Теперь обновление любого устройства не будет забыто, каждое устройство Микротик будет проверяться ежедневно и напоминать вам об обновлении!
P.S. Чтобы скрипт работал, у вас должен быть токен бота Telegram и идентификатор чата или личный идентификатор.