Страница 1 из 1

Скрипт проверки версии Роутер ОС.

Добавлено: 05 окт 2021, 13:49
Sertik
Скрипт проверяет текущую версию РОС сравнивая её с наличием новой доступной для апгрейда версии и сообщает о наличии новой версии в Телеграм.
Скрипт не мой, нашёл в Инете, работает отлично. TelegramBotToken и TelegramChatID нужно заменить на свои.

Код: Выделить всё

# 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:AAFJIVTAWodBwzGX2CLne6-PK4RFNSy-8OY";
:local TelegramChatID "987654321";
: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;