Opened 6 years ago
Last modified 6 years ago
#372 new улучшение
Окно VE-01: групповое редактирование параметров
Reported by: | san | Owned by: | alx |
---|---|---|---|
Priority: | низкий | Milestone: | 2 очередь |
Component: | web-интерфейс (sw) | Keywords: | |
Cc: |
Description (last modified by )
Было бы неплохо дать пользователю возможность изменять значения настроек одновременно в нескольких канальных окончаниях. Например, понадобилось добавить в регулярное выражение всех FxS что-то и если окончаний много, то через веб-интерфейс делать это не удобно. Выручает то, что можно взять конфиг файл и воспользоваться функцией автозамены в текстовом редакторе. Но всё-же удобней было бы если такие возможности были в веб-интерфейсе.
p.s.
Во время написания #371 у меня возникла идея: разрешить пользователю создавать шаблоны(переменные) и использовать их в полях настроек.
Например пользователь создаёт шаблон $MY_IP$ = 192.168.0.254
, а в поле SIP URI окончаний пишет: 333@$MY_IP$
.
Или шаблон $LOCAL_NUMS$ = 23[5,6]\d{2
}, и потом использует его в полях рег. выражениями как-то так: ^(?!$LOCAL_NUMS$)
При изменении шаблона, изменения автоматически попадают во все места где он используется.
Change History (5)
comment:1 by , 6 years ago
Description: | modified (diff) |
---|
comment:2 by , 6 years ago
follow-ups: 4 5 comment:3 by , 6 years ago
Дублирует ve:#113.
Странно, специально искал но не нашел его.
В любом случае этот тикет больше к вебморде, чем к ve-01, предлагаю закрыть ve:#113, а этот оставить.
Про шаблоны.
В моей идее предлагается поля настроек в которые введены имена шаблонов, так и сохранять с именами шаблонов. А подстановку значений делать когда значение поля куда-нибудь понадобилось.
comment:4 by , 6 years ago
Replying to san:
В моей идее предлагается поля настроек в которые введены имена шаблонов, так и сохранять с именами шаблонов.
Тогда это предложение стоит перенести в sip_ua - ведь это платам VE-01 и VE-02 ты предлагаешь добавить новый функционал по подстановке шаблонов...
И здесь возникает еще один нехороший момент. Сейчас при вводе значений конфигурационных параметров веб-интерфейс выполняет проверку (более или менее полную) валидности значений перед передачей конфигурации плате VE-01/VE-02. Если пользователь по ошибке ввел недопустимое значение, он сразу получит сообщение типа "Значение такого-то параметра должно быть в диапазоне 10...99". То есть оператор сразу увидит, где и какую ошибку он допустил. Если же значением параметра будет какой-то шаблон, то при изменении значения шаблона веб-интерфейс не будет знать, где значение этого шаблона будет использовано, и поэтому не сможет проверить допустимость введенного значения. В результате получится, что оператор ввел новое значение шаблона, записал (успешно) шаблон в плату и пошел довольный домой. А о том, что плата новое значение не приняла, так как оно оказалось недопустимым, он и не узнает (если только не посмотрит ей в лог)...
comment:5 by , 6 years ago
Replying to san:
Дублирует ve:#113.
В любом случае этот тикет больше к вебморде, чем к ve-01, предлагаю закрыть ve:#113, а этот оставить.
Ты в качестве примера use case пишешь: "Например, понадобилось добавить в регулярное выражение всех FxS что-то". Для выполнения этой задачи веб-интерфейс для каждого канального окончания (хорошо, для каждого канального окончания типа FXS) должен:
- запросить у платы конфигурацию канального окончания;
- модифицировать значение конфигурационного параметра;
- записать модифицированную конфигурацию обратно в плату.
Так делать, конечно, можно, но как-то очень неоптимально получается - если канальных окончаний много, то и вычитывать придется большой объем информации. Даже с учетом того, что последний пункт можно оставить на нажатие "Применить"... Ты, наверное, замечал, что если канальных окончаний много, то информация в диалог конфигурации платы загружается с заметной задержкой, несколько секунд. А ведь это всего лишь читается список канальных окончаний, где их тип и URI (и еще PCM-код с реальным именем за каким-то чертом, надо убрать!). Полная конфигурация же длиннее в разы! Сколько будет вычитываться конфигурация 250 канальных окончаний? Несколько минут? Не будет ли лучше просто передать указание о добавлении чего-то непосредственно плате VE-01, чтобы она уже у себя внутри все быстро сделала?
Хотя, с другой стороны, в SW-01 есть механизм кеширования, его можно задействовать для чтения конфигурации без реального запроса к VE-01...
Дублирует ve:#113.
Я не возражаю, если ты сможешь сформулировать алгоритм и предложить вариант пользовательского интерфейса. До сих пор сформулировать такое предложение никто не смог...
Я не понял мысль о шаблонах. Как сейчас выглядит процесс:
Как предлагается делать в описании тикета:
Насколько я вижу, в предложенном варианте действий больше, чем в уже существующем. В чем же улучшение? В голову приходит только случай, когда, например, SIP-прокси имеет очень длинное имя, например proxy.sip.my.very.long.domain.name, и оператор создает шаблон $P=proxy.sip.my.very.long.domain.name - тогда вместо proxy.sip.my.very.long.domain.name можно будет вводить $P. Да и то это работает только если такое имя требуется вводить в нескольких разных полях. Для создания нескольких однотипных канальных окончаний есть функция клонирования, в которой существующее окончание является шаблоном для нового...
Насколько я понимаю, шаблон используется "в местах" лишь в течение относительно короткого промежутка времени между созданием канального окончания (с использованием шаблона) и его записью в плату, то есть он существует в течение нескольких минут. Учитывая это, степень полезности данной функции мне не кажется очень высокой...