fix(mikrotikConfigRoutes): enhance script execution logic to find script ID before running
Publish Fast Tabler Docker image / build-and-push-fast (push) Successful in 2m9s

This commit is contained in:
2026-02-03 23:47:39 +07:00
parent d4a1643a25
commit 61c87e69ef
2 changed files with 15 additions and 10 deletions
+6 -2
View File
@@ -295,8 +295,12 @@ async function runScript(req, res) {
}
const client = createRosClient(creds);
// /rest/system/script/run — запуск скрипта по имени (.id принимает имя скрипта)
await client.command('system/script/run', { '.id': script });
// Сначала находим скрипт по имени, затем запускаем по .id
const scripts = await client.print('system/script');
const list = Array.isArray(scripts?.data) ? scripts.data : (scripts?.data ? [scripts.data] : []);
const found = list.find(s => (s.name || s['.id']) === script);
const scriptId = found ? (found['.id'] || found.name) : script;
await client.command('system/script/run', { '.id': scriptId });
return sendOk(res, { ok: true, message: `Скрипт ${script} запущен` });
} catch (error) {