BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 17 июн 2025, 12:42

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: TelnetServiceActivator sa.command Escape character
СообщениеДобавлено: 20 апр 2016, 11:27 
Не в сети

Зарегистрирован: 15 окт 2014, 12:25
Сообщения: 36
Карма: 0
Добрый день!

Подскажите пожалуйста.
На TelnetServiceActivator для использования скриптовых финкций на команде в Microtik-е, как можно исключить некоторые символы: ";", "$'' в команде:
Код:
sa.command.serv.enable={:global funcAdd do={:local tList; :local res; :if ([:len [/queue simple find name="Internet 5M" ....


Пробовал ставить "\" перед этими символами, не получилось.

Заранее спасибо!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: TelnetServiceActivator sa.command Escape character
СообщениеДобавлено: 20 апр 2016, 15:46 
Не в сети

Зарегистрирован: 15 окт 2014, 12:25
Сообщения: 36
Карма: 0
Симворл ";" - удалось заменить переменной, настройки команды выглядат так:
Код:
SPR=;
sa.command.serv.enable={:global funcAdd do={:local tList$param(SPR) :local res$param(SPR) :if ([:len [/queue simple find name="Internet 5M"]]>0)  ....


Но "$" -таким способом не получается, выдает ошибку:
Код:
SPR=;
CONTR=$vContr
sa.command.serv.enable={:global funcAdd do={:local tList$param(SPR) :local res$param(SPR) :if ([:len [/queue simple find name=$param(CONTR)]]>0)  ....


Код:
04-20/11:57:02 ERROR [sa-p-13-t-44] EventWorker - Error on device:1 - java.lang.StringIndexOutOfBoundsException: String index out of range: 1
ru.bitel.bgbilling.common.BGException: Error on device:1 - java.lang.StringIndexOutOfBoundsException: String index out of range: 1
        at ru.bitel.bgbilling.modules.inet.access.sa.ServiceActivatorDeviceWorker.doTask(ServiceActivatorDeviceWorker.java:489)
        at ru.bitel.bgbilling.kernel.event.AsyncEventWorker.internalDoTaskImpl(AsyncEventWorker.java:211)
        at ru.bitel.bgbilling.kernel.event.AsyncEventWorker.internalDoTask(AsyncEventWorker.java:183)
        at ru.bitel.bgbilling.kernel.event.AsyncEventWorker.doTasks(AsyncEventWorker.java:109)
        at ru.bitel.bgbilling.modules.inet.access.sa.ServiceActivatorDeviceWorker.runWorker(ServiceActivatorDeviceWorker.java:239)
        at ru.bitel.bgbilling.kernel.event.EventWorker.internalRunWorker(EventWorker.java:139)
        at ru.bitel.bgbilling.modules.inet.access.sa.ServiceActivatorDeviceWorker.runImpl(ServiceActivatorDeviceWorker.java:145)
        at ru.bitel.common.worker.WorkerTask.run(WorkerTask.java:86)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
        at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:46)
Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: 1
        at java.lang.String.charAt(String.java:658)
        at java.util.regex.Matcher.appendReplacement(Matcher.java:772)
        at ru.bitel.common.util.MacrosFormat.formatImpl(MacrosFormat.java:149)
        at ru.bitel.common.util.MacrosFormat.format(MacrosFormat.java:84)
        at ru.bitel.common.util.MacrosFormat.format(MacrosFormat.java:35)
        at ru.bitel.bgbilling.modules.inet.dyn.device.terminal.AbstractTerminalServiceActivator.executeCommands(AbstractTerminalServiceActivator.java:731)
        at ru.bitel.bgbilling.modules.inet.dyn.device.terminal.AbstractTerminalServiceActivator.serviceEnable(AbstractTerminalServiceActivator.java:886)
        at ru.bitel.bgbilling.modules.inet.dyn.device.terminal.AbstractTerminalServiceActivator.serviceModify(AbstractTerminalServiceActivator.java:853)
        at ru.bitel.bgbilling.modules.inet.access.sa.ServiceActivatorSet.serviceModify(ServiceActivatorSet.java:413)
        at ru.bitel.bgbilling.modules.inet.access.sa.ServiceActivatorDeviceWorker.doCommand(ServiceActivatorDeviceWorker.java:512)
        at ru.bitel.bgbilling.modules.inet.access.sa.ServiceActivatorDeviceWorker.doTask(ServiceActivatorDeviceWorker.java:485)
        ... 15 more


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: TelnetServiceActivator sa.command Escape character
СообщениеДобавлено: 20 апр 2016, 15:56 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
$ - вроде можно указать так: $$()

; - если команды указывать не одной строкой через ;, а отдельными параметрами:
sa.command.serv.enable.1=co;mmand1
sa.command.serv.enable.2=comm;and2

Ну и наверно можем добавить макрос для ; аналогично $$().


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
POWERED_BY
Русская поддержка phpBB
[ Time : 0.056s | 21 Queries | GZIP : On ]