Не впервые натыкаюсь на ограничение в текстовом объеме скриптов при импорте в Winbox (просто обрезается лишнее). В основном это решалось тщательной оптимизацией и сокращением имен переменных (до непонятных), удалением комментариев, но вот настал момент, когда сокращать уже некуда. Функционала, аналогичного функции include в PHP, у Router OS нет, так что на несколько файлов делить возможности нет (да и не хотелось бы)...
На сайте разработчика пишут, что ограничение Winbox можно обойти импортируя скрипт из файла. Это действительно так, ограничение уже в 50Кб и в общем-то этого было бы достаточно (правда не знаю, чего оно касается, объема файла или объема данных после парсинга).
Даже импортируя скрипт из файла есть неудобства: 1. Либо надо писать сразу скрипты в форме, подходящей для импорта (с символами переноса строки, причем в конце еще и добавлять слеш, а так же "эскейпить" все остальные спецсимволы), либо писать в редакторе, а потом конвертировать в формат удобный для импорта (причем конвертера я не нашел такого, попробовал написать его на ROS, но тут вообще на файлы более ~4Кб ругань)... 2. Стоить "отредактировать" скрипт в Winbox, он его тут же тут же порежет килобайт до 30... 3. Неудобно. Конвертер не нашел, написал сам на PHP, загружаю файл в обработчик, скачиваю сконвертированный для импорта в ROS, импортирую ROS - работает. Но это масса лишних телодвижений, дебаг отнимает много времени.
И вообще несколько раз обращался к разработчику что-бы повысили ограничение в ВинБокс - бесполезно, не понимаю в чем причина... Может в 7й версии получше станет...
Может есть какой-то более удобный способ?
Вот на всякий случай конвертер на PHP
Как вы пишите скрипты большого объема?
- podarok66
- Модератор
- Сообщения: 4402
- Зарегистрирован: 11 фев 2012, 18:49
- Откуда: МО
Да собственно, никак не обходим. Вон пользуемся короткими скриптами, функции пишет часть опытных юзеров (Sertik очень наловчился с этим управляться), глобальные переменные в помощь. Да, собственно, и нет сейчас необходимости в огромных скриптах. Что там описывать?
Мануалы изучил и нигде не ошибся? Фаервол отключил? Очереди погасил? Витая пара проверена? ... Тогда Netinstal'ом железку прошей и настрой ее заново. Что, все равно не фурычит? Тогда к нам. Если не подскажем, хоть посочувствуем...