diff --git a/front-generator/config/scpc.json b/front-generator/config/scpc.json
new file mode 100644
index 0000000..fa22e11
--- /dev/null
+++ b/front-generator/config/scpc.json
@@ -0,0 +1,208 @@
+{
+ "modem_name": "RSCM-201",
+ "modem_type": "scpc",
+ "dangerousParamGroups": {
+ "buclnb": "Применение неправильных настроек может вывести из строя оборудование! Продолжить?",
+ "network": "Применение этих настроек может сделать модем недоступным! Продолжить?"
+ },
+ "params": {
+ "rxtx": [
+ {"widget": "h2", "label": "Настройки приема/передачи"},
+ {
+ "widget": "settings-container",
+ "childs": [
+ {
+ "widget": "select", "label": "Режим работы", "name": "isCinC",
+ "values": [{"label": "SCPC", "value": "false"}, {"label": "CinC", "value": "true"}]
+ }
+ ]
+ },
+ {
+ "widget": "flex-container",
+ "childs": [
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Настройки передатчика"},
+ {"widget": "checkbox", "label": "Включить передатчик", "name": "txEn"},
+ {"widget": "checkbox", "label": "Автоматический запуск передатчика", "name": "txAutoStart"},
+ {
+ "widget": "select", "label": "Режим работы модулятора", "name": "txModulatorIsTest",
+ "values": [{"label": "Нормальный", "value": "false"}, {"label": "Тест (CW)", "value": "true"}]
+ },
+ {
+ "widget": "select", "label": "Входные данные", "name": "txIsTestInput",
+ "values": [{"label": "Ethernet", "value": "false"}, {"label": "Тест", "value": "true"}]
+ },
+ {"widget": "h3", "label": "Параметры передачи"},
+ {"widget": "number-int", "label": "Центральная частота, КГц", "name": "txCentralFreq", "min": 100000, "max": 6000000, "step": 0.01},
+ {"widget": "number-int", "label": "Символьная скорость, Бод", "name": "txBaudrate", "min": 200000, "max": 56000000},
+ {
+ "widget": "select", "label": "Roll-off", "name": "txRolloff",
+ "values": [{"label": "0.02", "value": "20"}, {"label": "0.05", "value": "50"}, {"label": "0.10", "value": "100"}, {"label": "0.15", "value": "150"}, {"label": "0.20", "value": "200"}, {"label": "0.25", "value": "250"}]
+ },
+ {
+ "widget": "select", "label": "Номер последовательности Голда", "name": "txGoldan",
+ "values": [{"label": "0", "value": "0"}, {"label": "1", "value": "1"}]
+ },
+ {"widget": "number", "label": "Ослабление, дБ", "name": "txAttenuation", "max": 0, "min": -40, "step": 0.25}
+ ]
+ },
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Режим работы DVB-S2"},
+ {"widget": "number", "label": "Период служебных пакетов, сек", "name": "dvbServicePacketPeriod", "min": 0, "step": 1, "max": 60},
+ {
+ "widget": "select", "label": "Режим модуляции", "name": "dvbIsAcm",
+ "values": [{"label": "CCM", "value": "false"}, {"label": "ACM", "value": "true"}]
+ },
+ {
+ "widget": "select", "label": "Размер кадра", "name": "txFrameSizeNormal",
+ "values": [{"label": "normal", "value": "true"}, {"label": "short", "value": "false"}]
+ },
+ {"widget": "checkbox", "label": "Пилот-символы", "name": "txIsPilots"},
+ {"widget": "modulation-modcod", "label": "Модуляция", "name": "dvbCcm", "v_show": "paramRxtx.dvbIsAcm === false"},
+ {"widget": "modulation-speed", "label": "Скорость кода", "name": "dvbCcm", "v_show": "paramRxtx.dvbIsAcm === false"},
+ {"widget": "watch-expr", "label": "Расчетная скорость", "expr": "calcInterfaceSpeedKb(paramRxtx.txBaudrate, paramRxtx.dvbCcmModulation, paramRxtx.dvbCcmSpeed, paramRxtx.txFrameSizeNormal)", "v_show": "paramRxtx.dvbIsAcm === false"},
+ {"widget": "watch-expr", "label": "Текущий модкод", "expr": "statTx.modcod", "v_show": "paramRxtx.dvbIsAcm === true"},
+ {"widget": "modulation-modcod", "label": "Модуляция (мин. режим)", "name": "dvbAcmMin", "v_show": "paramRxtx.dvbIsAcm === true"},
+ {"widget": "modulation-speed", "label": "Скорость кода (мин. режим)", "name": "dvbAcmMin", "v_show": "paramRxtx.dvbIsAcm === true"},
+ {"widget": "watch-expr", "label": "Расчетная скорость (мин. режим)", "expr": "calcInterfaceSpeedKb(paramRxtx.txBaudrate, paramRxtx.dvbAcmMinModulation, paramRxtx.dvbAcmMinSpeed, paramRxtx.txFrameSizeNormal)", "v_show": "paramRxtx.dvbIsAcm === true"},
+ {"widget": "modulation-modcod", "label": "Модуляция (макс. режим)", "name": "dvbAcmMax", "v_show": "paramRxtx.dvbIsAcm === true"},
+ {"widget": "modulation-speed", "label": "Скорость кода (макс. режим)", "name": "dvbAcmMax", "v_show": "paramRxtx.dvbIsAcm === true"},
+ {"widget": "watch-expr", "label": "Расчетная скорость (макс. режим)", "expr": "calcInterfaceSpeedKb(paramRxtx.txBaudrate, paramRxtx.dvbAcmMaxModulation, paramRxtx.dvbAcmMaxSpeed, paramRxtx.txFrameSizeNormal)", "v_show": "paramRxtx.dvbIsAcm === true"},
+ {"widget": "number", "label": "Запас ОСШ, дБ", "name": "dvbSnrReserve", "min": 0, "step": 0.01, "max": 10}
+ ]
+ },
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Авто-регулировка мощности"},
+ {"widget": "checkbox", "label": "Авто-регулировка мощности", "name": "aupcEn"},
+ {"widget": "number", "label": "Минимальное ослабление, дБ", "name": "aupcMinAttenuation", "min": 0, "step": 0.1, "max": 10},
+ {"widget": "number", "label": "Максимальное ослабление, дБ", "name": "aupcMaxAttenuation", "min": 0, "step": 0.1, "max": 10},
+ {"widget": "number", "label": "Требуемое ОСШ", "name": "aupcRequiredSnr", "min": 0, "step": 0.01, "max": 30}
+ ]
+ },
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Настройки приемника"},
+ {
+ "widget": "select", "label": "Режим управления усилением", "name": "rxAgcEn",
+ "values": [{"label": "РРУ", "value": "false"}, {"label": "АРУ", "value": "true"}]
+ },
+ {"widget": "number", "label": "Усиление, дБ", "name": "rxManualGain", "min": -40, "step": 0.01, "max": 40, "v_show": "paramRxtx.rxAgcEn === false"},
+ {"widget": "watch-expr", "label": "Текущее усиление", "expr": "paramRxtx.rxManualGain", "v_show": "paramRxtx.rxAgcEn === true"},
+ {"widget": "checkbox", "label": "Инверсия спектра", "name": "rxSpectrumInversion"},
+ {"widget": "number-int", "label": "Центральная частота, КГц", "name": "rxCentralFreq", "min": 100000, "max": 6000000, "step": 0.01},
+ {"widget": "number-int", "label": "Символьная скорость, Бод", "name": "rxBaudrate", "min": 200000, "max": 56000000},
+ {
+ "widget": "select", "label": "Roll-off", "name": "rxRolloff",
+ "values": [{"label": "0.02", "value": "20"}, {"label": "0.05", "value": "50"}, {"label": "0.10", "value": "100"}, {"label": "0.15", "value": "150"}, {"label": "0.20", "value": "200"}, {"label": "0.25", "value": "250"}]
+ },
+ {
+ "widget": "select", "label": "Номер последовательности Голда", "name": "rxGoldan",
+ "values": [{"label": "0", "value": "0"}, {"label": "1", "value": "1"}]
+ }
+ ]
+ }
+ ]
+ }
+ ],
+ "dpdi": [
+ {"widget": "h2", "label": "Настройки режима CinC", "v_show": "paramRxtx.isCinC"},
+ {
+ "widget": "settings-container", "v_show": "paramRxtx.isCinC",
+ "childs": [
+ {
+ "widget": "select", "label": "Метод расчета задержки", "name": "isPositional",
+ "values": [
+ {"label": "Позиционированием", "value": "true"},
+ {"label": "Окном задержки", "value": "false"}
+ ]
+ },
+ {"widget": "number", "label": "Полоса поиска, КГц ±", "name": "searchBandwidth", "min": 0, "step": 1, "max": 100},
+ {"widget": "h2", "label": "Настройки позиционирования", "v_show": "paramDpdi.isPositional === true"},
+ {"widget": "number", "label": "Широта станции", "name": "positionStationLatitude", "v_show": "paramDpdi.isPositional === true", "min": -180, "step": 0.000001, "max": 180},
+ {"widget": "number", "label": "Долгота станции", "name": "positionStationLongitude", "v_show": "paramDpdi.isPositional === true", "min": -180, "step": 0.000001, "max": 180},
+ {"widget": "number", "label": "Подспутниковая точка", "name": "positionSatelliteLongitude", "v_show": "paramDpdi.isPositional === true", "min": -180, "step": 0.000001, "max": 180},
+ {"widget": "h2", "label": "Задержка до спутника", "v_show": "paramDpdi.isPositional === false"},
+ {"widget": "number", "label": "от, мс", "name": "delayMin", "v_show": "paramDpdi.isPositional === false", "min": 0, "step": 0.1, "max": 400},
+ {"widget": "number", "label": "до, мс", "name": "delayMax", "v_show": "paramDpdi.isPositional === false", "min": 0, "step": 0.1, "max": 400}]
+ },
+ {"widget": "submit", "v_show": "paramRxtx.isCinC"}
+ ],
+ "buclnb": [
+ {"widget": "h2", "label": "Настройки питания и опорного генератора"},
+ {
+ "widget": "flex-container",
+ "childs": [
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Настройки BUC"},
+ {"widget": "checkbox", "label": "Подача опоры 10МГц", "name": "bucRefClk10M"},
+ {
+ "widget": "select", "label": "Питание BUC", "name": "bucPowering",
+ "values": [
+ {"label": "Выкл", "value": "0"},
+ {"label": "24В", "value": "24"},
+ {"label": "48В", "value": "48"}
+ ]
+ }
+ ]
+ },
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Настройки LNB"},
+ {"widget": "checkbox", "label": "Подача опоры 10МГц", "name": "lnbRefClk10M"},
+ {
+ "widget": "select", "label": "Питание LNB", "name": "lnbPowering",
+ "values": [
+ {"label": "Выкл", "value": "0"},
+ {"label": "13В", "value": "13"},
+ {"label": "18В", "value": "18"},
+ {"label": "24В", "value": "24"}
+ ]
+ }
+ ]
+ },
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Сервисные настройки"},
+ {"widget": "checkbox", "label": "Подача опоры 10МГц на 'Выход 10МГц'", "name": "srvRefClk10M"},
+ {"widget": "checkbox", "label": "Автозапуск BUC и LNB при включении", "name": "bucLnbAutoStart"}
+ ]
+ }
+ ]
+ }
+ ],
+ "network": [
+ {"widget": "h2", "label": "Настройки сети"},
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Настройки интерфейса управления"},
+ {"widget": "ip-address-mask", "label": "Интерфейс управления (a.d.d.r/mask)", "name": "managementIp"},
+ {
+ "widget": "select", "label": "Режим сети", "name": "isL2",
+ "values": [{"label": "Маршрутизатор", "value": "false"}, {"label": "Коммутатор", "value": "true"}]
+ },
+ {"widget": "ip-address", "label": "Интерфейс данных (/24)", "name": "dataIp", "v_show": "paramNetwork.isL2 === false"},
+ {"widget": "number", "label": "MTU интерфейса данных", "name": "dataMtu", "min": 1500, "step": 1, "max": 2000},
+ {"widget": "text", "label": "Имя веб-сервера", "name": "serverName"}
+ ]
+ }
+ ]
+ },
+ "tabs": [
+ {"name": "monitoring", "desc": "Мониторинг"},
+ {"name": "setup", "desc": "Настройки"},
+ {"name": "qos", "desc": "QoS"},
+ {"name": "admin", "desc": "Администрирование"}
+ ]
+}
\ No newline at end of file
diff --git a/front-generator/config/shps.json b/front-generator/config/shps.json
new file mode 100644
index 0000000..3cb691a
--- /dev/null
+++ b/front-generator/config/shps.json
@@ -0,0 +1,145 @@
+{
+ "modem_name": "ШПС Модем",
+ "modem_type": "shps",
+ "dangerousParamGroups": {
+ "buclnb": "Применение неправильных настроек может вывести из строя оборудование! Продолжить?",
+ "network": "Применение этих настроек может сделать модем недоступным! Продолжить?"
+ },
+ "params": {
+ "rxtx": [
+ {"widget": "h2", "label": "Настройки приема/передачи"},
+ {
+ "widget": "flex-container",
+ "childs": [
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Настройки передатчика"},
+ {"widget": "checkbox", "label": "Включить передатчик", "name": "txEn"},
+ {"widget": "checkbox", "label": "Автоматический запуск передатчика", "name": "txAutoStart"},
+ {
+ "widget": "select", "label": "Режим работы модулятора", "name": "txModulatorIsTest",
+ "values": [{"label": "Нормальный", "value": "false"}, {"label": "Тест (CW)", "value": "true"}]
+ },
+ {"widget": "number", "label": "Ослабление, дБ", "name": "txAttenuation", "max": 0, "min": -80, "step": 0.25},
+ {
+ "widget": "select", "label": "Входные данные", "name": "txIsTestInput",
+ "values": [{"label": "Ethernet", "value": "false"}, {"label": "Тест", "value": "true"}]
+ },
+ {"widget": "h3", "label": "Параметры передачи"},
+ {"widget": "number-int", "label": "Центральная частота, КГц", "name": "txCentralFreq", "min": 70000, "max": 6000000, "step": 0.01},
+ {"widget": "number-int", "label": "Символьная скорость, Бод", "name": "txBaudrate", "min": 128000, "max": 30000000},
+ {
+ "widget": "select", "label": "Roll-off", "name": "txRolloff",
+ "values": [{"label": "0.02", "value": "20"}, {"label": "0.05", "value": "50"}, {"label": "0.10", "value": "100"}, {"label": "0.15", "value": "150"}, {"label": "0.20", "value": "200"}, {"label": "0.25", "value": "250"}, {"label": "0.30", "value": "300"}, {"label": "0.35", "value": "350"}]
+ },
+ {"widget": "number", "label": "Коэф. расширения", "name": "txSpreadCoef", "max": 1024, "min": 8, "step": 2},
+ {"widget": "number", "label": "Кол-во пакетов на преамбулу", "name": "txFieldsDataPreamble", "max": 255, "min": 1, "step": 1}
+ ]
+ },
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Авто-регулировка мощности"},
+ {"widget": "checkbox", "label": "Авто-регулировка мощности", "name": "aupcEn"},
+ {"widget": "number", "label": "Минимальное ослабление, дБ", "name": "aupcMinAttenuation", "min": 0, "step": 0.1, "max": 10},
+ {"widget": "number", "label": "Максимальное ослабление, дБ", "name": "aupcMaxAttenuation", "min": 0, "step": 0.1, "max": 10},
+ {"widget": "number", "label": "Требуемое ОСШ", "name": "aupcRequiredSnr", "min": 0, "step": 0.01, "max": 30}
+ ]
+ },
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Настройки приемника"},
+ {
+ "widget": "select", "label": "Режим управления усилением", "name": "rxAgcEn",
+ "values": [{"label": "РРУ", "value": "false"}, {"label": "АРУ", "value": "true"}]
+ },
+ {"widget": "number", "label": "Усиление, дБ", "name": "rxManualGain", "min": -40, "step": 0.01, "max": 40, "v_show": "paramRxtx.rxAgcEn === false"},
+ {"widget": "watch-expr", "label": "Текущее усиление", "expr": "paramRxtx.rxManualGain", "v_show": "paramRxtx.rxAgcEn === true"},
+ {"widget": "checkbox", "label": "Инверсия спектра", "name": "rxSpectrumInversion"},
+ {"widget": "number-int", "label": "Центральная частота, КГц", "name": "rxCentralFreq", "min": 70000, "max": 6000000, "step": 0.01},
+ {"widget": "number-int", "label": "Символьная скорость, Бод", "name": "rxBaudrate", "min": 128000, "max": 30000000},
+ {
+ "widget": "select", "label": "Roll-off", "name": "rxRolloff",
+ "values": [{"label": "0.02", "value": "20"}, {"label": "0.05", "value": "50"}, {"label": "0.10", "value": "100"}, {"label": "0.15", "value": "150"}, {"label": "0.20", "value": "200"}, {"label": "0.25", "value": "250"}, {"label": "0.30", "value": "300"}, {"label": "0.35", "value": "350"}]
+ },
+ {"widget": "number", "label": "Коэф. расширения", "name": "rxSpreadCoef", "max": 1024, "min": 8, "step": 2},
+ {"widget": "number", "label": "Порог коррелятора", "name": "rxFftShift", "max": 10, "min": 1, "step": 0.125},
+ {"widget": "number", "label": "Кол-во пакетов на преамбулу", "name": "rxFieldsDataPreamble", "max": 255, "min": 1, "step": 1}
+ ]
+ }
+ ]
+ }
+ ],
+ "buclnb": [
+ {"widget": "h2", "label": "Настройки питания и опорного генератора"},
+ {
+ "widget": "flex-container",
+ "childs": [
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Настройки BUC"},
+ {"widget": "checkbox", "label": "Подача опоры 10МГц", "name": "bucRefClk10M"},
+ {
+ "widget": "select", "label": "Питание BUC", "name": "bucPowering",
+ "values": [
+ {"label": "Выкл", "value": "0"},
+ {"label": "24В", "value": "24"},
+ {"label": "48В", "value": "48"}
+ ]
+ }
+ ]
+ },
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Настройки LNB"},
+ {"widget": "checkbox", "label": "Подача опоры 10МГц", "name": "lnbRefClk10M"},
+ {
+ "widget": "select", "label": "Питание LNB", "name": "lnbPowering",
+ "values": [
+ {"label": "Выкл", "value": "0"},
+ {"label": "13В", "value": "13"},
+ {"label": "18В", "value": "18"},
+ {"label": "24В", "value": "24"}
+ ]
+ }
+ ]
+ },
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Сервисные настройки"},
+ {"widget": "checkbox", "label": "Подача опоры 10МГц на 'Выход 10МГц'", "name": "srvRefClk10M"},
+ {"widget": "checkbox", "label": "Автозапуск BUC и LNB при включении", "name": "bucLnbAutoStart"}
+ ]
+ }
+ ]
+ }
+ ],
+ "network": [
+ {"widget": "h2", "label": "Настройки сети"},
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Настройки интерфейса управления"},
+ {"widget": "ip-address-mask", "label": "Интерфейс управления (a.d.d.r/mask)", "name": "managementIp"},
+ {
+ "widget": "select", "label": "Режим сети", "name": "isL2",
+ "values": [{"label": "Маршрутизатор", "value": "false"}, {"label": "Коммутатор", "value": "true"}]
+ },
+ {"widget": "ip-address", "label": "Интерфейс данных (/24)", "name": "dataIp", "v_show": "paramNetwork.isL2 === false"},
+ {"widget": "number", "label": "MTU интерфейса данных", "name": "dataMtu", "min": 1500, "step": 1, "max": 2000},
+ {"widget": "text", "label": "Имя веб-сервера", "name": "serverName"}
+ ]
+ }
+ ]
+ },
+ "tabs": [
+ {"name": "monitoring", "desc": "Мониторинг"},
+ {"name": "setup", "desc": "Настройки"},
+ {"name": "admin", "desc": "Администрирование"}
+ ]
+}
diff --git a/front-generator/config/tdma.json b/front-generator/config/tdma.json
new file mode 100644
index 0000000..a610219
--- /dev/null
+++ b/front-generator/config/tdma.json
@@ -0,0 +1,139 @@
+{
+ "modem_name": "VSAT Модем",
+ "modem_type": "tdma",
+ "dangerousParamGroups": {
+ "buclnb": "Применение неправильных настроек может вывести из строя оборудование! Продолжить?",
+ "network": "Применение этих настроек может сделать модем недоступным! Продолжить?"
+ },
+ "params": {
+ "rxtx": [
+ {"widget": "h2", "label": "Настройки приема/передачи"},
+ {
+ "widget": "flex-container",
+ "childs": [
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Настройки передатчика"},
+ {"widget": "checkbox", "label": "Включить передатчик", "name": "txEn"},
+ {
+ "widget": "select", "label": "Режим работы модулятора", "name": "txModulatorIsTest",
+ "values": [{"label": "Нормальный", "value": "false"}, {"label": "Тест (CW)", "value": "true"}]
+ },
+ {"widget": "number-int", "label": "Центральная частота, КГц", "name": "txCentralFreq", "min": 900000, "step": 0.01, "v_show": "paramRxtx.txModulatorIsTest"},
+ {"widget": "number", "label": "Ослабление, дБ", "name": "txAttenuation", "max": 0, "min": -90, "step": 1},
+ {"widget": "number", "label": "Ослабление для запросных слотов, дБ", "name": "txAttenuationAck", "max": 0, "min": -90, "step": 1},
+ {"widget": "number", "label": "Ограничение ослабления", "name": "txAttenuationLimit", "max": 0, "min": -40, "step": 0.25}
+ ]
+ },
+ {
+ "widget": "settings-container",
+ "childs": [
+ { "widget": "h3", "label": "Настройки приемника" },
+ {
+ "widget": "select", "label": "Режим управления усилением", "name": "rxAgcEn",
+ "values": [
+ {"label": "АРУ", "value": "true"},
+ {"label": "РРУ", "value": "false"}
+ ]
+ },
+ {"widget": "number", "label": "Ручное усиление, дБ", "name": "rxManualGain", "v_show": "!paramRxtx.rxAgcEn", "min": -40},
+ {"widget": "checkbox", "label": "Инверсия спектра", "name": "rxSpectrumInversion"},
+ {"widget": "number-int", "label": "Центральная частота, КГц", "name": "rxCentralFreq", "min": 900000, "step": 0.01},
+ {"widget": "number-int", "label": "Символьная скорость, Бод", "name": "rxBaudrate", "min": 200000, "max": 54000000, "step": 1},
+ {
+ "widget": "select", "label": "Roll-off", "name": "rxRolloff",
+ "values": [{"label": "0.02", "value": "20"}, {"label": "0.05", "value": "50"}, {"label": "0.10", "value": "100"}, {"label": "0.15", "value": "150"}, {"label": "0.20", "value": "200"}, {"label": "0.25", "value": "250"}]
+ }
+ ]
+ }
+ ]
+ }
+ ],
+ "buclnb": [
+ {"widget": "h2", "label": "Настройки питания и опорного генератора"},
+ {
+ "widget": "flex-container",
+ "childs": [
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Настройки BUC"},
+ {"widget": "checkbox", "label": "Подача опоры 10МГц", "name": "bucRefClk10M"},
+ {
+ "widget": "select", "label": "Питание BUC", "name": "bucPowering",
+ "values": [
+ {"label": "Выкл", "value": "0"},
+ {"label": "24В", "value": "24"}
+ ]
+ },
+ {"widget": "number-int", "label": "Частота LO, кГц", "name": "bucLoKhz", "min": 0, "max": 40000000, "step": 1}
+ ]
+ },
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Настройки LNB"},
+ {"widget": "checkbox", "label": "Подача опоры 10МГц", "name": "lnbRefClk10M"},
+ {
+ "widget": "select", "label": "Питание LNB", "name": "lnbPowering",
+ "values": [
+ {"label": "Выкл", "value": "0"},
+ {"label": "13В", "value": "13"},
+ {"label": "18В", "value": "18"},
+ {"label": "24В", "value": "24"}
+ ]
+ },
+ {"widget": "number-int", "label": "Частота LO, кГц", "name": "lnbLoKhz", "min": 0, "max": 40000000, "step": 1}
+ ]
+ },
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Сервисные настройки"},
+ {"widget": "checkbox", "label": "Подача опоры 10МГц на 'Выход 10МГц'", "name": "srvRefClk10M"},
+ {"widget": "checkbox", "label": "Автозапуск BUC и LNB при включении", "name": "bucLnbAutoStart"}
+ ]
+ }
+ ]
+ }
+ ],
+ "dpdi": [
+ {"widget": "h2", "label": "Настройки DPDI"},
+ {
+ "widget": "settings-container",
+ "childs": [
+ {
+ "widget": "select", "label": "Метод расчета задержки", "name": "isPositional",
+ "values": [
+ {"label": "Позиционированием", "value": "true"},
+ {"label": "Окном задержки", "value": "false"}
+ ]
+ },
+ {"widget": "h2", "label": "Настройки позиционирования", "v_show": "paramDpdi.isPositional === true"},
+ {"widget": "number", "label": "Широта станции", "name": "positionStationLatitude", "v_show": "paramDpdi.isPositional === true", "min": -180, "step": 0.000001, "max": 180},
+ {"widget": "number", "label": "Долгота станции", "name": "positionStationLongitude", "v_show": "paramDpdi.isPositional === true", "min": -180, "step": 0.000001, "max": 180},
+ {"widget": "number", "label": "Подспутниковая точка", "name": "positionSatelliteLongitude", "v_show": "paramDpdi.isPositional === true", "min": -180, "step": 0.000001, "max": 180},
+ {"widget": "number", "label": "Задержка до спутника, мс", "name": "delay", "v_show": "paramDpdi.isPositional === false", "min": 0, "step": 0.1, "max": 400}]
+ },
+ {"widget": "submit"}
+ ],
+ "network": [
+ {"widget": "h2", "label": "Настройки сети"},
+ {
+ "widget": "settings-container",
+ "childs": [
+ {"widget": "h3", "label": "Настройки интерфейса управления"},
+ {"widget": "ip-address-mask", "label": "Интерфейс управления (a.d.d.r/mask)", "name": "managementIp"},
+ {"widget": "text", "label": "Имя веб-сервера", "name": "serverName"}
+ ]
+ }
+ ]
+ },
+ "tabs": [
+ {"name": "monitoring", "desc": "Мониторинг"},
+ {"name": "setup", "desc": "Настройки"},
+ {"name": "admin", "desc": "Администрирование"},
+ {"name": "logs", "desc": "Журнал"}
+ ]
+}
\ No newline at end of file
diff --git a/front-generator/render-params.json b/front-generator/render-params.json
deleted file mode 100644
index 6659bbd..0000000
--- a/front-generator/render-params.json
+++ /dev/null
@@ -1,493 +0,0 @@
-{
- "modem_types": {
- "tdma": {
- "modem_name": "VSAT Модем",
- "dangerousParamGroups": {
- "buclnb": "Применение неправильных настроек может вывести из строя оборудование! Продолжить?",
- "network": "Применение этих настроек может сделать модем недоступным! Продолжить?"
- },
- "params": {
- "rxtx": [
- {"widget": "h2", "label": "Настройки приема/передачи"},
- {
- "widget": "flex-container",
- "childs": [
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Настройки передатчика"},
- {"widget": "checkbox", "label": "Включить передатчик", "name": "txEn"},
- {
- "widget": "select", "label": "Режим работы модулятора", "name": "txModulatorIsTest",
- "values": [{"label": "Нормальный", "value": "false"}, {"label": "Тест (CW)", "value": "true"}]
- },
- {"widget": "number-int", "label": "Центральная частота, КГц", "name": "txCentralFreq", "min": 900000, "step": 0.01, "v_show": "paramRxtx.txModulatorIsTest"},
- {"widget": "number", "label": "Ослабление, дБ", "name": "txAttenuation", "max": 0, "min": -90, "step": 1},
- {"widget": "number", "label": "Ослабление для запросных слотов, дБ", "name": "txAttenuationAck", "max": 0, "min": -90, "step": 1},
- {"widget": "number", "label": "Ограничение ослабления", "name": "txAttenuationLimit", "max": 0, "min": -40, "step": 0.25}
- ]
- },
- {
- "widget": "settings-container",
- "childs": [
- { "widget": "h3", "label": "Настройки приемника" },
- {
- "widget": "select", "label": "Режим управления усилением", "name": "rxAgcEn",
- "values": [
- {"label": "АРУ", "value": "true"},
- {"label": "РРУ", "value": "false"}
- ]
- },
- {"widget": "number", "label": "Ручное усиление, дБ", "name": "rxManualGain", "v_show": "!paramRxtx.rxAgcEn", "min": -40},
- {"widget": "checkbox", "label": "Инверсия спектра", "name": "rxSpectrumInversion"},
- {"widget": "number-int", "label": "Центральная частота, КГц", "name": "rxCentralFreq", "min": 900000, "step": 0.01},
- {"widget": "number-int", "label": "Символьная скорость, Бод", "name": "rxBaudrate", "min": 200000, "max": 54000000, "step": 1},
- {
- "widget": "select", "label": "Roll-off", "name": "rxRolloff",
- "values": [{"label": "0.02", "value": "20"}, {"label": "0.05", "value": "50"}, {"label": "0.10", "value": "100"}, {"label": "0.15", "value": "150"}, {"label": "0.20", "value": "200"}, {"label": "0.25", "value": "250"}]
- }
- ]
- }
- ]
- }
- ],
- "buclnb": [
- {"widget": "h2", "label": "Настройки питания и опорного генератора"},
- {
- "widget": "flex-container",
- "childs": [
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Настройки BUC"},
- {"widget": "checkbox", "label": "Подача опоры 10МГц", "name": "bucRefClk10M"},
- {
- "widget": "select", "label": "Питание BUC", "name": "bucPowering",
- "values": [
- {"label": "Выкл", "value": "0"},
- {"label": "24В", "value": "24"}
- ]
- },
- {"widget": "number-int", "label": "Частота LO, кГц", "name": "bucLoKhz", "min": 0, "max": 40000000, "step": 1}
- ]
- },
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Настройки LNB"},
- {"widget": "checkbox", "label": "Подача опоры 10МГц", "name": "lnbRefClk10M"},
- {
- "widget": "select", "label": "Питание LNB", "name": "lnbPowering",
- "values": [
- {"label": "Выкл", "value": "0"},
- {"label": "13В", "value": "13"},
- {"label": "18В", "value": "18"},
- {"label": "24В", "value": "24"}
- ]
- },
- {"widget": "number-int", "label": "Частота LO, кГц", "name": "lnbLoKhz", "min": 0, "max": 40000000, "step": 1}
- ]
- },
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Сервисные настройки"},
- {"widget": "checkbox", "label": "Подача опоры 10МГц на 'Выход 10МГц'", "name": "srvRefClk10M"},
- {"widget": "checkbox", "label": "Автозапуск BUC и LNB при включении", "name": "bucLnbAutoStart"}
- ]
- }
- ]
- }
- ],
- "dpdi": [
- {"widget": "h2", "label": "Настройки DPDI"},
- {
- "widget": "settings-container",
- "childs": [
- {
- "widget": "select", "label": "Метод расчета задержки", "name": "isPositional",
- "values": [
- {"label": "Позиционированием", "value": "true"},
- {"label": "Окном задержки", "value": "false"}
- ]
- },
- {"widget": "h2", "label": "Настройки позиционирования", "v_show": "paramDpdi.isPositional === true"},
- {"widget": "number", "label": "Широта станции", "name": "positionStationLatitude", "v_show": "paramDpdi.isPositional === true", "min": -180, "step": 0.000001, "max": 180},
- {"widget": "number", "label": "Долгота станции", "name": "positionStationLongitude", "v_show": "paramDpdi.isPositional === true", "min": -180, "step": 0.000001, "max": 180},
- {"widget": "number", "label": "Подспутниковая точка", "name": "positionSatelliteLongitude", "v_show": "paramDpdi.isPositional === true", "min": -180, "step": 0.000001, "max": 180},
- {"widget": "number", "label": "Задержка до спутника, мс", "name": "delay", "v_show": "paramDpdi.isPositional === false", "min": 0, "step": 0.1, "max": 400}]
- },
- {"widget": "submit"}
- ],
- "network": [
- {"widget": "h2", "label": "Настройки сети"},
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Настройки интерфейса управления"},
- {"widget": "ip-address-mask", "label": "Интерфейс управления (a.d.d.r/mask)", "name": "managementIp"},
- {"widget": "text", "label": "Имя веб-сервера", "name": "serverName"}
- ]
- }
- ]
- },
- "tabs": [
- {"name": "monitoring", "desc": "Мониторинг"},
- {"name": "setup", "desc": "Настройки"},
- {"name": "admin", "desc": "Администрирование"},
- {"name": "logs", "desc": "Журнал"}
- ]
- },
- "scpc": {
- "modem_name": "RSCM-201",
- "dangerousParamGroups": {
- "buclnb": "Применение неправильных настроек может вывести из строя оборудование! Продолжить?",
- "network": "Применение этих настроек может сделать модем недоступным! Продолжить?"
- },
- "params": {
- "rxtx": [
- {"widget": "h2", "label": "Настройки приема/передачи"},
- {
- "widget": "settings-container",
- "childs": [
- {
- "widget": "select", "label": "Режим работы", "name": "isCinC",
- "values": [{"label": "SCPC", "value": "false"}, {"label": "CinC", "value": "true"}]
- }
- ]
- },
- {
- "widget": "flex-container",
- "childs": [
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Настройки передатчика"},
- {"widget": "checkbox", "label": "Включить передатчик", "name": "txEn"},
- {"widget": "checkbox", "label": "Автоматический запуск передатчика", "name": "txAutoStart"},
- {
- "widget": "select", "label": "Режим работы модулятора", "name": "txModulatorIsTest",
- "values": [{"label": "Нормальный", "value": "false"}, {"label": "Тест (CW)", "value": "true"}]
- },
- {
- "widget": "select", "label": "Входные данные", "name": "txIsTestInput",
- "values": [{"label": "Ethernet", "value": "false"}, {"label": "Тест", "value": "true"}]
- },
- {"widget": "h3", "label": "Параметры передачи"},
- {"widget": "number-int", "label": "Центральная частота, КГц", "name": "txCentralFreq", "min": 100000, "max": 6000000, "step": 0.01},
- {"widget": "number-int", "label": "Символьная скорость, Бод", "name": "txBaudrate", "min": 200000, "max": 56000000},
- {
- "widget": "select", "label": "Roll-off", "name": "txRolloff",
- "values": [{"label": "0.02", "value": "20"}, {"label": "0.05", "value": "50"}, {"label": "0.10", "value": "100"}, {"label": "0.15", "value": "150"}, {"label": "0.20", "value": "200"}, {"label": "0.25", "value": "250"}]
- },
- {
- "widget": "select", "label": "Номер последовательности Голда", "name": "txGoldan",
- "values": [{"label": "0", "value": "0"}, {"label": "1", "value": "1"}]
- },
- {"widget": "number", "label": "Ослабление, дБ", "name": "txAttenuation", "max": 0, "min": -40, "step": 0.25}
- ]
- },
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Режим работы DVB-S2"},
- {"widget": "number", "label": "Период служебных пакетов, сек", "name": "dvbServicePacketPeriod", "min": 0, "step": 1, "max": 60},
- {
- "widget": "select", "label": "Режим модуляции", "name": "dvbIsAcm",
- "values": [{"label": "CCM", "value": "false"}, {"label": "ACM", "value": "true"}]
- },
- {
- "widget": "select", "label": "Размер кадра", "name": "txFrameSizeNormal",
- "values": [{"label": "normal", "value": "true"}, {"label": "short", "value": "false"}]
- },
- {"widget": "checkbox", "label": "Пилот-символы", "name": "txIsPilots"},
- {"widget": "modulation-modcod", "label": "Модуляция", "name": "dvbCcm", "v_show": "paramRxtx.dvbIsAcm === false"},
- {"widget": "modulation-speed", "label": "Скорость кода", "name": "dvbCcm", "v_show": "paramRxtx.dvbIsAcm === false"},
- {"widget": "watch-expr", "label": "Расчетная скорость", "expr": "calcInterfaceSpeedKb(paramRxtx.txBaudrate, paramRxtx.dvbCcmModulation, paramRxtx.dvbCcmSpeed, paramRxtx.txFrameSizeNormal)", "v_show": "paramRxtx.dvbIsAcm === false"},
- {"widget": "watch-expr", "label": "Текущий модкод", "expr": "statTx.modcod", "v_show": "paramRxtx.dvbIsAcm === true"},
- {"widget": "modulation-modcod", "label": "Модуляция (мин. режим)", "name": "dvbAcmMin", "v_show": "paramRxtx.dvbIsAcm === true"},
- {"widget": "modulation-speed", "label": "Скорость кода (мин. режим)", "name": "dvbAcmMin", "v_show": "paramRxtx.dvbIsAcm === true"},
- {"widget": "watch-expr", "label": "Расчетная скорость (мин. режим)", "expr": "calcInterfaceSpeedKb(paramRxtx.txBaudrate, paramRxtx.dvbAcmMinModulation, paramRxtx.dvbAcmMinSpeed, paramRxtx.txFrameSizeNormal)", "v_show": "paramRxtx.dvbIsAcm === true"},
- {"widget": "modulation-modcod", "label": "Модуляция (макс. режим)", "name": "dvbAcmMax", "v_show": "paramRxtx.dvbIsAcm === true"},
- {"widget": "modulation-speed", "label": "Скорость кода (макс. режим)", "name": "dvbAcmMax", "v_show": "paramRxtx.dvbIsAcm === true"},
- {"widget": "watch-expr", "label": "Расчетная скорость (макс. режим)", "expr": "calcInterfaceSpeedKb(paramRxtx.txBaudrate, paramRxtx.dvbAcmMaxModulation, paramRxtx.dvbAcmMaxSpeed, paramRxtx.txFrameSizeNormal)", "v_show": "paramRxtx.dvbIsAcm === true"},
- {"widget": "number", "label": "Запас ОСШ, дБ", "name": "dvbSnrReserve", "min": 0, "step": 0.01, "max": 10}
- ]
- },
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Авто-регулировка мощности"},
- {"widget": "checkbox", "label": "Авто-регулировка мощности", "name": "aupcEn"},
- {"widget": "number", "label": "Минимальное ослабление, дБ", "name": "aupcMinAttenuation", "min": 0, "step": 0.1, "max": 10},
- {"widget": "number", "label": "Максимальное ослабление, дБ", "name": "aupcMaxAttenuation", "min": 0, "step": 0.1, "max": 10},
- {"widget": "number", "label": "Требуемое ОСШ", "name": "aupcRequiredSnr", "min": 0, "step": 0.01, "max": 30}
- ]
- },
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Настройки приемника"},
- {
- "widget": "select", "label": "Режим управления усилением", "name": "rxAgcEn",
- "values": [{"label": "РРУ", "value": "false"}, {"label": "АРУ", "value": "true"}]
- },
- {"widget": "number", "label": "Усиление, дБ", "name": "rxManualGain", "min": -40, "step": 0.01, "max": 40, "v_show": "paramRxtx.rxAgcEn === false"},
- {"widget": "watch-expr", "label": "Текущее усиление", "expr": "paramRxtx.rxManualGain", "v_show": "paramRxtx.rxAgcEn === true"},
- {"widget": "checkbox", "label": "Инверсия спектра", "name": "rxSpectrumInversion"},
- {"widget": "number-int", "label": "Центральная частота, КГц", "name": "rxCentralFreq", "min": 100000, "max": 6000000, "step": 0.01},
- {"widget": "number-int", "label": "Символьная скорость, Бод", "name": "rxBaudrate", "min": 200000, "max": 56000000},
- {
- "widget": "select", "label": "Roll-off", "name": "rxRolloff",
- "values": [{"label": "0.02", "value": "20"}, {"label": "0.05", "value": "50"}, {"label": "0.10", "value": "100"}, {"label": "0.15", "value": "150"}, {"label": "0.20", "value": "200"}, {"label": "0.25", "value": "250"}]
- },
- {
- "widget": "select", "label": "Номер последовательности Голда", "name": "rxGoldan",
- "values": [{"label": "0", "value": "0"}, {"label": "1", "value": "1"}]
- }
- ]
- }
- ]
- }
- ],
- "dpdi": [
- {"widget": "h2", "label": "Настройки режима CinC", "v_show": "paramRxtx.isCinC"},
- {
- "widget": "settings-container", "v_show": "paramRxtx.isCinC",
- "childs": [
- {
- "widget": "select", "label": "Метод расчета задержки", "name": "isPositional",
- "values": [
- {"label": "Позиционированием", "value": "true"},
- {"label": "Окном задержки", "value": "false"}
- ]
- },
- {"widget": "number", "label": "Полоса поиска, КГц ±", "name": "searchBandwidth", "min": 0, "step": 1, "max": 100},
- {"widget": "h2", "label": "Настройки позиционирования", "v_show": "paramDpdi.isPositional === true"},
- {"widget": "number", "label": "Широта станции", "name": "positionStationLatitude", "v_show": "paramDpdi.isPositional === true", "min": -180, "step": 0.000001, "max": 180},
- {"widget": "number", "label": "Долгота станции", "name": "positionStationLongitude", "v_show": "paramDpdi.isPositional === true", "min": -180, "step": 0.000001, "max": 180},
- {"widget": "number", "label": "Подспутниковая точка", "name": "positionSatelliteLongitude", "v_show": "paramDpdi.isPositional === true", "min": -180, "step": 0.000001, "max": 180},
- {"widget": "h2", "label": "Задержка до спутника", "v_show": "paramDpdi.isPositional === false"},
- {"widget": "number", "label": "от, мс", "name": "delayMin", "v_show": "paramDpdi.isPositional === false", "min": 0, "step": 0.1, "max": 400},
- {"widget": "number", "label": "до, мс", "name": "delayMax", "v_show": "paramDpdi.isPositional === false", "min": 0, "step": 0.1, "max": 400}]
- },
- {"widget": "submit", "v_show": "paramRxtx.isCinC"}
- ],
- "buclnb": [
- {"widget": "h2", "label": "Настройки питания и опорного генератора"},
- {
- "widget": "flex-container",
- "childs": [
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Настройки BUC"},
- {"widget": "checkbox", "label": "Подача опоры 10МГц", "name": "bucRefClk10M"},
- {
- "widget": "select", "label": "Питание BUC", "name": "bucPowering",
- "values": [
- {"label": "Выкл", "value": "0"},
- {"label": "24В", "value": "24"},
- {"label": "48В", "value": "48"}
- ]
- }
- ]
- },
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Настройки LNB"},
- {"widget": "checkbox", "label": "Подача опоры 10МГц", "name": "lnbRefClk10M"},
- {
- "widget": "select", "label": "Питание LNB", "name": "lnbPowering",
- "values": [
- {"label": "Выкл", "value": "0"},
- {"label": "13В", "value": "13"},
- {"label": "18В", "value": "18"},
- {"label": "24В", "value": "24"}
- ]
- }
- ]
- },
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Сервисные настройки"},
- {"widget": "checkbox", "label": "Подача опоры 10МГц на 'Выход 10МГц'", "name": "srvRefClk10M"},
- {"widget": "checkbox", "label": "Автозапуск BUC и LNB при включении", "name": "bucLnbAutoStart"}
- ]
- }
- ]
- }
- ],
- "network": [
- {"widget": "h2", "label": "Настройки сети"},
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Настройки интерфейса управления"},
- {"widget": "ip-address-mask", "label": "Интерфейс управления (a.d.d.r/mask)", "name": "managementIp"},
- {
- "widget": "select", "label": "Режим сети", "name": "isL2",
- "values": [{"label": "Маршрутизатор", "value": "false"}, {"label": "Коммутатор", "value": "true"}]
- },
- {"widget": "ip-address", "label": "Интерфейс данных (/24)", "name": "dataIp", "v_show": "paramNetwork.isL2 === false"},
- {"widget": "number", "label": "MTU интерфейса данных", "name": "dataMtu", "min": 1500, "step": 1, "max": 2000},
- {"widget": "text", "label": "Имя веб-сервера", "name": "serverName"}
- ]
- }
- ]
- },
- "tabs": [
- {"name": "monitoring", "desc": "Мониторинг"},
- {"name": "setup", "desc": "Настройки"},
- {"name": "qos", "desc": "QoS"},
- {"name": "admin", "desc": "Администрирование"}
- ]
- },
- "shps": {
- "modem_name": "ШПС Модем",
- "dangerousParamGroups": {
- "buclnb": "Применение неправильных настроек может вывести из строя оборудование! Продолжить?",
- "network": "Применение этих настроек может сделать модем недоступным! Продолжить?"
- },
- "params": {
- "rxtx": [
- {"widget": "h2", "label": "Настройки приема/передачи"},
- {
- "widget": "flex-container",
- "childs": [
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Настройки передатчика"},
- {"widget": "checkbox", "label": "Включить передатчик", "name": "txEn"},
- {"widget": "checkbox", "label": "Автоматический запуск передатчика", "name": "txAutoStart"},
- {
- "widget": "select", "label": "Режим работы модулятора", "name": "txModulatorIsTest",
- "values": [{"label": "Нормальный", "value": "false"}, {"label": "Тест (CW)", "value": "true"}]
- },
- {"widget": "number", "label": "Ослабление, дБ", "name": "txAttenuation", "max": 0, "min": -80, "step": 0.25},
- {
- "widget": "select", "label": "Входные данные", "name": "txIsTestInput",
- "values": [{"label": "Ethernet", "value": "false"}, {"label": "Тест", "value": "true"}]
- },
- {"widget": "h3", "label": "Параметры передачи"},
- {"widget": "number-int", "label": "Центральная частота, КГц", "name": "txCentralFreq", "min": 70000, "max": 6000000, "step": 0.01},
- {"widget": "number-int", "label": "Символьная скорость, Бод", "name": "txBaudrate", "min": 128000, "max": 30000000},
- {
- "widget": "select", "label": "Roll-off", "name": "txRolloff",
- "values": [{"label": "0.02", "value": "20"}, {"label": "0.05", "value": "50"}, {"label": "0.10", "value": "100"}, {"label": "0.15", "value": "150"}, {"label": "0.20", "value": "200"}, {"label": "0.25", "value": "250"}, {"label": "0.30", "value": "300"}, {"label": "0.35", "value": "350"}]
- },
- {"widget": "number", "label": "Коэф. расширения", "name": "txSpreadCoef", "max": 1024, "min": 8, "step": 2},
- {"widget": "number", "label": "Кол-во пакетов на преамбулу", "name": "txFieldsDataPreamble", "max": 255, "min": 1, "step": 1}
- ]
- },
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Авто-регулировка мощности"},
- {"widget": "checkbox", "label": "Авто-регулировка мощности", "name": "aupcEn"},
- {"widget": "number", "label": "Минимальное ослабление, дБ", "name": "aupcMinAttenuation", "min": 0, "step": 0.1, "max": 10},
- {"widget": "number", "label": "Максимальное ослабление, дБ", "name": "aupcMaxAttenuation", "min": 0, "step": 0.1, "max": 10},
- {"widget": "number", "label": "Требуемое ОСШ", "name": "aupcRequiredSnr", "min": 0, "step": 0.01, "max": 30}
- ]
- },
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Настройки приемника"},
- {
- "widget": "select", "label": "Режим управления усилением", "name": "rxAgcEn",
- "values": [{"label": "РРУ", "value": "false"}, {"label": "АРУ", "value": "true"}]
- },
- {"widget": "number", "label": "Усиление, дБ", "name": "rxManualGain", "min": -40, "step": 0.01, "max": 40, "v_show": "paramRxtx.rxAgcEn === false"},
- {"widget": "watch-expr", "label": "Текущее усиление", "expr": "paramRxtx.rxManualGain", "v_show": "paramRxtx.rxAgcEn === true"},
- {"widget": "checkbox", "label": "Инверсия спектра", "name": "rxSpectrumInversion"},
- {"widget": "number-int", "label": "Центральная частота, КГц", "name": "rxCentralFreq", "min": 70000, "max": 6000000, "step": 0.01},
- {"widget": "number-int", "label": "Символьная скорость, Бод", "name": "rxBaudrate", "min": 128000, "max": 30000000},
- {
- "widget": "select", "label": "Roll-off", "name": "rxRolloff",
- "values": [{"label": "0.02", "value": "20"}, {"label": "0.05", "value": "50"}, {"label": "0.10", "value": "100"}, {"label": "0.15", "value": "150"}, {"label": "0.20", "value": "200"}, {"label": "0.25", "value": "250"}, {"label": "0.30", "value": "300"}, {"label": "0.35", "value": "350"}]
- },
- {"widget": "number", "label": "Коэф. расширения", "name": "rxSpreadCoef", "max": 1024, "min": 8, "step": 2},
- {"widget": "number", "label": "Порог коррелятора", "name": "rxFftShift", "max": 10, "min": 1, "step": 0.125},
- {"widget": "number", "label": "Кол-во пакетов на преамбулу", "name": "rxFieldsDataPreamble", "max": 255, "min": 1, "step": 1}
- ]
- }
- ]
- }
- ],
- "buclnb": [
- {"widget": "h2", "label": "Настройки питания и опорного генератора"},
- {
- "widget": "flex-container",
- "childs": [
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Настройки BUC"},
- {"widget": "checkbox", "label": "Подача опоры 10МГц", "name": "bucRefClk10M"},
- {
- "widget": "select", "label": "Питание BUC", "name": "bucPowering",
- "values": [
- {"label": "Выкл", "value": "0"},
- {"label": "24В", "value": "24"},
- {"label": "48В", "value": "48"}
- ]
- }
- ]
- },
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Настройки LNB"},
- {"widget": "checkbox", "label": "Подача опоры 10МГц", "name": "lnbRefClk10M"},
- {
- "widget": "select", "label": "Питание LNB", "name": "lnbPowering",
- "values": [
- {"label": "Выкл", "value": "0"},
- {"label": "13В", "value": "13"},
- {"label": "18В", "value": "18"},
- {"label": "24В", "value": "24"}
- ]
- }
- ]
- },
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Сервисные настройки"},
- {"widget": "checkbox", "label": "Подача опоры 10МГц на 'Выход 10МГц'", "name": "srvRefClk10M"},
- {"widget": "checkbox", "label": "Автозапуск BUC и LNB при включении", "name": "bucLnbAutoStart"}
- ]
- }
- ]
- }
- ],
- "network": [
- {"widget": "h2", "label": "Настройки сети"},
- {
- "widget": "settings-container",
- "childs": [
- {"widget": "h3", "label": "Настройки интерфейса управления"},
- {"widget": "ip-address-mask", "label": "Интерфейс управления (a.d.d.r/mask)", "name": "managementIp"},
- {
- "widget": "select", "label": "Режим сети", "name": "isL2",
- "values": [{"label": "Маршрутизатор", "value": "false"}, {"label": "Коммутатор", "value": "true"}]
- },
- {"widget": "ip-address", "label": "Интерфейс данных (/24)", "name": "dataIp", "v_show": "paramNetwork.isL2 === false"},
- {"widget": "number", "label": "MTU интерфейса данных", "name": "dataMtu", "min": 1500, "step": 1, "max": 2000},
- {"widget": "text", "label": "Имя веб-сервера", "name": "serverName"}
- ]
- }
- ]
- },
- "tabs": [
- {"name": "monitoring", "desc": "Мониторинг"},
- {"name": "setup", "desc": "Настройки"},
- {"name": "admin", "desc": "Администрирование"}
- ]
- }
- }
-}
\ No newline at end of file
diff --git a/front-generator/render.py b/front-generator/render.py
index 5512761..d851942 100644
--- a/front-generator/render.py
+++ b/front-generator/render.py
@@ -3,8 +3,30 @@ from jinja2 import Environment, FileSystemLoader
import sys
import os
-with open('render-params.json') as f:
- GLOBAL_CONFIG = json.load(f)
+
+CONFIG_DIR = "config"
+MODEM_TYPES = {}
+
+for _fname in os.listdir(CONFIG_DIR):
+ if not _fname.endswith(".json"):
+ continue
+
+ path = os.path.join(CONFIG_DIR, _fname)
+
+ try:
+ with open(path, "r", encoding="utf-8") as f:
+ data = json.load(f)
+ except Exception as e:
+ print(f"[WARN] Failed to read {path}: {e}")
+ continue
+
+ modem_type = data.get("modem_type")
+ if modem_type is None:
+ print(f"[WARN] {_fname} ignored: no 'modem_type' field")
+ continue
+
+ MODEM_TYPES[modem_type] = data
+
def extract_param_names(mc):
@@ -78,10 +100,10 @@ def extract_param_groups(mc):
def build_modem_env(modem):
- if modem not in GLOBAL_CONFIG['modem_types']:
+ if modem not in MODEM_TYPES:
raise RuntimeError(f"Modem '{modem}' is not exist in config!")
- mc = GLOBAL_CONFIG['modem_types'][modem]
+ mc = MODEM_TYPES[modem]
add_submit_widgets(mc['params'])
@@ -109,7 +131,7 @@ def render_modem(modem):
if __name__ == '__main__':
- for mt in GLOBAL_CONFIG['modem_types']:
+ for mt in MODEM_TYPES:
print(f'Generating {mt} modem...')
render_modem(mt)
os.system(f'cp -u main-{mt}.html ../static')
diff --git a/front-generator/template/common/admin-methods.js.j2 b/front-generator/template/common/admin-methods.js.j2
index b085236..a565556 100644
--- a/front-generator/template/common/admin-methods.js.j2
+++ b/front-generator/template/common/admin-methods.js.j2
@@ -63,22 +63,6 @@ async settingsPerformFirmwareUpgradeOta() {
}
this.submitStatus.firmwareUpgradeOta = false
},
-async settingsPerformSetCesPassword() {
- if (this.submitStatus.cesPassword) { return }
- this.submitStatus.cesPassword = true
- try {
- await fetch('/api/set/cesPassword', {
- method: 'POST',
- headers: {
- 'Content-Type': 'application/json',
- },
- body: JSON.stringify({'password': this.cesPasswordValue})
- })
- } catch (e) {
- console.log("failed to perform set CES password: ", e)
- }
- this.submitStatus.cesPassword = false
-},
{% endif %}
doModemReboot() {
diff --git a/front-generator/template/common/admin.html.j2 b/front-generator/template/common/admin.html.j2
index 9505230..11ccf0a 100644
--- a/front-generator/template/common/admin.html.j2
+++ b/front-generator/template/common/admin.html.j2
@@ -8,7 +8,8 @@
- | Версия ПО | {{ about.firmwareVersion }} |
+ | Версия прошивки | {{ about.firmwareVersion }} |
+ | Версия FPGA | {{ about.firmwareFpgaVersion }} |
| ID модема | {{ about.modemUid }} |
| Серийный номер | {{ about.modemSn }} |
| MAC интерфейса управления | {{ about.macManagement }} |
@@ -23,16 +24,7 @@
- {% endraw %}{% if modem == 'tdma' %}
-
- Вход в сеть ЦЗС
-
-
-
-
{% endif %}{% raw %}
+
Обновление ПО
diff --git a/front-generator/template/main.html b/front-generator/template/main.html
index 5ca3439..5628226 100644
--- a/front-generator/template/main.html
+++ b/front-generator/template/main.html
@@ -134,6 +134,7 @@
// эти "настройки" - read only
about: {
firmwareVersion: '?',
+ firmwareFpgaVersion: '?',
modemUid: '?',
modemSn: '?',
macManagement: '?',
@@ -241,6 +242,7 @@
const fr = await fetch("/api/get/aboutFirmware")
const d = await fr.json()
this.about.firmwareVersion = d["firmware"]["version"]
+ this.about.firmwareFpgaVersion = d["firmware"]["fpgaVersion"]
this.about.modemUid = d["firmware"]["modemId"]
this.about.modemSn = d["firmware"]["modemSn"]
this.about.macManagement = d["firmware"]["macMang"]
diff --git a/src/api-driver/structs.cpp b/src/api-driver/structs.cpp
index cedf5a7..fc21e45 100644
--- a/src/api-driver/structs.cpp
+++ b/src/api-driver/structs.cpp
@@ -304,6 +304,7 @@ api_driver::obj::TerminalFirmwareVersion & api_driver::obj::TerminalFirmwareVers
void api_driver::obj::TerminalFirmwareVersion::load(proxy::CpProxy &cp) {
version = cp.getNetwork("version");
+ fpgaVersion = cp.getNetwork("fpga_version");
modemId = cp.getNetwork("chip_id");
rtrim(modemId);
modemSn = cp.getNetwork("serial");
diff --git a/src/api-driver/structs.h b/src/api-driver/structs.h
index 6932ee0..93cc8d3 100644
--- a/src/api-driver/structs.h
+++ b/src/api-driver/structs.h
@@ -109,7 +109,7 @@ namespace api_driver::obj {
class TerminalFirmwareVersion {
public:
- std::string version, modemId, modemSn, macMang, macData;
+ std::string version, fpgaVersion, modemId, modemSn, macMang, macData;
TerminalFirmwareVersion();
TerminalFirmwareVersion(const TerminalFirmwareVersion& src);
diff --git a/static/main-scpc.html b/static/main-scpc.html
index 5a87cfd..7b9d2b0 100644
--- a/static/main-scpc.html
+++ b/static/main-scpc.html
@@ -519,7 +519,8 @@
- | Версия ПО | {{ about.firmwareVersion }} |
+ | Версия прошивки | {{ about.firmwareVersion }} |
+ | Версия FPGA | {{ about.firmwareFpgaVersion }} |
| ID модема | {{ about.modemUid }} |
| Серийный номер | {{ about.modemSn }} |
| MAC интерфейса управления | {{ about.macManagement }} |
@@ -725,6 +726,7 @@
// эти "настройки" - read only
about: {
firmwareVersion: '?',
+ firmwareFpgaVersion: '?',
modemUid: '?',
modemSn: '?',
macManagement: '?',
@@ -1542,6 +1544,7 @@
const fr = await fetch("/api/get/aboutFirmware")
const d = await fr.json()
this.about.firmwareVersion = d["firmware"]["version"]
+ this.about.firmwareFpgaVersion = d["firmware"]["fpgaVersion"]
this.about.modemUid = d["firmware"]["modemId"]
this.about.modemSn = d["firmware"]["modemSn"]
this.about.macManagement = d["firmware"]["macMang"]
diff --git a/static/main-shps.html b/static/main-shps.html
index b38f15e..e49d903 100644
--- a/static/main-shps.html
+++ b/static/main-shps.html
@@ -280,7 +280,8 @@
- | Версия ПО | {{ about.firmwareVersion }} |
+ | Версия прошивки | {{ about.firmwareVersion }} |
+ | Версия FPGA | {{ about.firmwareFpgaVersion }} |
| ID модема | {{ about.modemUid }} |
| Серийный номер | {{ about.modemSn }} |
| MAC интерфейса управления | {{ about.macManagement }} |
@@ -449,6 +450,7 @@
// эти "настройки" - read only
about: {
firmwareVersion: '?',
+ firmwareFpgaVersion: '?',
modemUid: '?',
modemSn: '?',
macManagement: '?',
@@ -950,6 +952,7 @@
const fr = await fetch("/api/get/aboutFirmware")
const d = await fr.json()
this.about.firmwareVersion = d["firmware"]["version"]
+ this.about.firmwareFpgaVersion = d["firmware"]["fpgaVersion"]
this.about.modemUid = d["firmware"]["modemId"]
this.about.modemSn = d["firmware"]["modemSn"]
this.about.macManagement = d["firmware"]["macMang"]
diff --git a/static/main-tdma.html b/static/main-tdma.html
index 4923f87..378de17 100644
--- a/static/main-tdma.html
+++ b/static/main-tdma.html
@@ -259,7 +259,8 @@
- | Версия ПО | {{ about.firmwareVersion }} |
+ | Версия прошивки | {{ about.firmwareVersion }} |
+ | Версия FPGA | {{ about.firmwareFpgaVersion }} |
| ID модема | {{ about.modemUid }} |
| Серийный номер | {{ about.modemSn }} |
| MAC интерфейса управления | {{ about.macManagement }} |
@@ -275,14 +276,6 @@
- Вход в сеть ЦЗС
-
-
-
-
Обновление ПО
@@ -474,6 +467,7 @@
// эти "настройки" - read only
about: {
firmwareVersion: '?',
+ firmwareFpgaVersion: '?',
modemUid: '?',
modemSn: '?',
macManagement: '?',
@@ -808,22 +802,6 @@
}
this.submitStatus.firmwareUpgradeOta = false
},
- async settingsPerformSetCesPassword() {
- if (this.submitStatus.cesPassword) { return }
- this.submitStatus.cesPassword = true
- try {
- await fetch('/api/set/cesPassword', {
- method: 'POST',
- headers: {
- 'Content-Type': 'application/json',
- },
- body: JSON.stringify({'password': this.cesPasswordValue})
- })
- } catch (e) {
- console.log("failed to perform set CES password: ", e)
- }
- this.submitStatus.cesPassword = false
- },
doModemReboot() {
if (this.submitStatus.modemReboot !== null) {
@@ -1020,6 +998,7 @@
const fr = await fetch("/api/get/aboutFirmware")
const d = await fr.json()
this.about.firmwareVersion = d["firmware"]["version"]
+ this.about.firmwareFpgaVersion = d["firmware"]["fpgaVersion"]
this.about.modemUid = d["firmware"]["modemId"]
this.about.modemSn = d["firmware"]["modemSn"]
this.about.macManagement = d["firmware"]["macMang"]