Added
- Multi-line script templates (Deploy) — Command Templates now support a Script type that holds a multi-line RouterOS script body (
:while,:local, comments, nested blocks). Script templates are install-only: a new Deploy button pushes the body into/system/scripton selected devices with a chosen name, optionally replacing an existing entry. Use it for recurring scheduled jobs like a Spamhaus DROP loader. Validated end-to-end on real hardware. - Stale-data indicator on Dashboard and Devices — when a device hasn't sent a status update in ~2.5 minutes, the row/card dims and shows a small amber
STALEbadge. Live re-evaluated every 30 seconds, so you see degradation as it happens instead of guessing why a row looks frozen.
Fixed
- "Check for Updates" without DNS now says why — if the router has no DNS configured (or hits a timeout / network error / permission issue) the Latest ROS column shows a labelled badge (
No DNS,Timeout,No internet,No permission) with the full RouterOS error in the tooltip, instead of a bare-and greyUnknown. Reported by Andreas Faerber. - Script Deploy now preserves
$varnamereferences — earlier in v1.17.1 testing, deployed scripts had their$iand other variables silently stripped (RouterOS expands$varnamewhile parsing thesource="..."argument). Fixed by escaping$in the SSH path. - REST script install reliability — switched the REST script-install path to the action-style
POST /system/script/addendpoint with an explicit policy field. PriorPUT /system/scriptreturned ambiguous results on some RouterOS 7.x versions and could fail silently.