From 88a1f0f50f02a48749c03109e9a336adcec8985f Mon Sep 17 00:00:00 2001 From: Alexander Lazarenko Date: Fri, 25 Apr 2025 03:07:02 +0300 Subject: [PATCH] Initial commit --- .gitignore | 3 + cmd/installer/defaultSettings.json | 10985 +++++++++++++++++++++++++++ cmd/installer/main.go | 24 + cmd/updater/main.go | 33 + cmd/updater/updater_config.json | 6 + go.mod | 45 + go.sum | 158 + internal/installer/installer.go | 96 + internal/ssh/client.go | 89 + internal/ui/file_selector.go | 49 + internal/ui/main_window.go | 120 + internal/ui/updater_window.go | 81 + internal/updater/updater.go | 89 + pkg/config/config.go | 61 + pkg/config/updater_config.go | 73 + pkg/fileutils/fileutils.go | 33 + 16 files changed, 11945 insertions(+) create mode 100644 .gitignore create mode 100644 cmd/installer/defaultSettings.json create mode 100644 cmd/installer/main.go create mode 100644 cmd/updater/main.go create mode 100644 cmd/updater/updater_config.json create mode 100644 go.mod create mode 100644 go.sum create mode 100644 internal/installer/installer.go create mode 100644 internal/ssh/client.go create mode 100644 internal/ui/file_selector.go create mode 100644 internal/ui/main_window.go create mode 100644 internal/ui/updater_window.go create mode 100644 internal/updater/updater.go create mode 100644 pkg/config/config.go create mode 100644 pkg/config/updater_config.go create mode 100644 pkg/fileutils/fileutils.go diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b984020 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +*build* +*\dict +.idea \ No newline at end of file diff --git a/cmd/installer/defaultSettings.json b/cmd/installer/defaultSettings.json new file mode 100644 index 0000000..40a32ec --- /dev/null +++ b/cmd/installer/defaultSettings.json @@ -0,0 +1,10985 @@ +{ + "SENSORS" : { + "LINKS": { + "*NAME" : { + "NAME" : "Линки" + }, + "TEST": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Тест линк", + "ALARM_LOWERBOUND" : 1, + "LOG_ERROR" : "Линка недоступна", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "EXTRA" : "{\"isBool\":false,\"isHide\":false}", + "IS_ALARM_ENABLED" : false + } + }, + "TRACTION_MOTOR": { + "*NAME" : { + "NAME" : "Тяговый двигатель" + }, + "107": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Разрешение заряда тяговой батареи.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "4156": { + "IS_ENABLED" : true, + "UNIT_NAME" : "A", + "NAME" : "Моментный ток тягового двигателя", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "4158": { + "IS_ENABLED" : true, + "UNIT_NAME" : "A", + "NAME" : "Задание моментного тока от педалей/EBS", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "203": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Минимальная температура ячейки, блок 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "204": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Максимальная температура ячейки, блок 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "205": { + "IS_ENABLED" : true, + "UNIT_NAME" : "%", + "NAME" : "SOC, блок 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "206": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "LIAB_ErrorCode, блок 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "209": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Минимальная температура ячейки, блок 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "210": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Максимальная температура ячейки, блок 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "211": { + "IS_ENABLED" : true, + "UNIT_NAME" : "%", + "NAME" : "SOC, блок 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "212": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "LIAB_ErrorCode, блок 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "215": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Минимальная температура ячейки, блок 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "216": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Максимальная температура ячейки, блок 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "217": { + "IS_ENABLED" : true, + "UNIT_NAME" : "%", + "NAME" : "SOC, блок 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "218": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "LIAB_ErrorCode, блок 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "221": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Минимальная температура ячейки, блок 4", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "222": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Максимальная температура ячейки, блок 4", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "223": { + "IS_ENABLED" : true, + "UNIT_NAME" : "%", + "NAME" : "SOC, блок 4", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "224": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "LIAB_ErrorCode, блок 4", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "227": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Минимальная температура ячейки, блок 5", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "228": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Максимальная температура ячейки, блок 5", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "229": { + "IS_ENABLED" : true, + "UNIT_NAME" : "%", + "NAME" : "SOC, блок 5", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "230": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "LIAB_ErrorCode, блок 5", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "233": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Минимальная температура ячейки, блок 6", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "234": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Максимальная температура ячейки, блок 6", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "235": { + "IS_ENABLED" : true, + "UNIT_NAME" : "%", + "NAME" : "SOC, блок 6", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "236": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "LIAB_ErrorCode, блок 5", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "239": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Минимальная температура ячейки, мастер-плата", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "240": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Максимальная температура ячейки, мастер-плата", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "241": { + "IS_ENABLED" : true, + "UNIT_NAME" : "%", + "NAME" : "SOC, мастер-плата", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "242": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "LIAB_ErrorCode, мастер-плата", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + } + }, + "CONTACT_NETWORK_CURRENT" : { + "*NAME" : { + "NAME" : "Ток контактной сети" + }, + "13173": { + "IS_ENABLED" : true, + "UNIT_NAME" : "A", + "NAME" : "Ток контактной сети", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "13172": { + "IS_ENABLED" : true, + "UNIT_NAME" : "В", + "NAME" : "Напряжение контактной сети", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "1": { + "IS_ENABLED" : true, + "UNIT_NAME" : "В", + "NAME" : "Высоковольтное напряжение тяговой батареи, блок 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "2": { + "IS_ENABLED" : true, + "UNIT_NAME" : "В", + "NAME" : "Высоковольтное напряжение тяговой батареи, блок 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "3": { + "IS_ENABLED" : true, + "UNIT_NAME" : "В", + "NAME" : "Высоковольтное напряжение тяговой батареи, блок 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "4": { + "IS_ENABLED" : true, + "UNIT_NAME" : "В", + "NAME" : "Высоковольтное напряжение тяговой батареи, блок 4", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "5": { + "IS_ENABLED" : true, + "UNIT_NAME" : "В", + "NAME" : "Высоковольтное напряжение тяговой батареи, блок 5", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "6": { + "IS_ENABLED" : true, + "UNIT_NAME" : "В", + "NAME" : "Высоковольтное напряжение тяговой батареи, блок 6", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + } + }, + "LOW_VOLTAGE_VOLTAGE" : { + "*NAME" : { + "NAME" : "Низковольтное напряжение" + }, + "7": { + "IS_ENABLED" : true, + "UNIT_NAME" : "В", + "NAME" : "Низковольтное напряжение", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "1000": { + "IS_ENABLED" : true, + "UNIT_NAME" : "В", + "NAME" : "Низковольтное напряжение", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + } + }, + "SPEED_SINARA" : { + "*NAME" : { + "NAME" : "Скорость" + }, + "84": { + "IS_ENABLED" : true, + "UNIT_NAME" : "КМ/Ч", + "NAME" : "Селективный сигнал скорости транспортного средства", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + } + }, + "DOORS_SINARA" : { + "*NAME" : { + "NAME" : "Состояние дверей" + }, + "8": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Открыть/закрыть, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "9": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Разрешение открытия дверей от внешней пассажирской кнопки, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "10": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Разрешение открытия дверей от внутренней пассажирской кнопки, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "179": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Открыть/закрыть, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "180": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Разрешение открытия дверей от внешней пассажирской кнопки, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "181": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Разрешение открытия дверей от внутренней пассажирской кнопки, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "182": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Открыть/закрыть, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "183": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Разрешение открытия дверей от внешней пассажирской кнопки, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "184": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Разрешение открытия дверей от внутренней пассажирской кнопки, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "11": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Положение двери, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "185": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Положение водительской створки, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "186": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Положение двери, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "187": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Положение водительской створки, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "188": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Положение двери, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "189": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Положение водительской створки, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "190": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Аварийное открытие, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + },"191": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Дверь выведена из эксплуатации, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "192": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Работает противозажим, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "193": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Обнаружена критическая ошибка, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "12": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Обнаружена некритическая ошибка, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "13": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Дверь открылась без сигнала, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "14": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Обнаружено препятствие на закрытии двери, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "15": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Обнаружено препятствие на открытии двери, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "16": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Сигнал \"открытить дверь\" получен, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "17": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Сигнал \"закрыть дверь\" получен, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "18": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Сигнал разрешения для кнопок получен, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "19": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Сигнал скорости получен, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "20": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Сигнал \"игнорировать CAN\" получен, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "21": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Флаг ожидания установок D1, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "22": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Флаг ожидания установок D2, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "23": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Флаг ожидания установок D3, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "24": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Флаг ожидания установок D4, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "25": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Флаг ожидания установок D5, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "26": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Флаг ожидания установок D6, дверь 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "27": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Аварийное открытие, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "28": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Дверь выведена из эксплуатации, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "29": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Работает противозажим, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "30": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Обнаружена критическая ошибка, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "31": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Обнаружена некритическая ошибка, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "32": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Дверь открылась без сигнала, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "33": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Обнаружено препятствие на закрытии двери, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "34": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Обнаружено препятствие на открытии двери, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "35": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Сигнал \"открытить дверь\" получен, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "36": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Сигнал \"закрыть дверь\" получен, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "37": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Сигнал разрешения для кнопок получен, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "38": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Сигнал скорости получен, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "39": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Сигнал \"игнорировать CAN\" получен, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "40": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Флаг ожидания установок D1, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "41": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Флаг ожидания установок D2, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "42": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Флаг ожидания установок D3, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "43": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Флаг ожидания установок D4, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "44": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Флаг ожидания установок D5, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "45": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Флаг ожидания установок D6, дверь 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "46": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Аварийное открытие, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "47": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Дверь выведена из эксплуатации, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "48": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Работает противозажим, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "49": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Обнаружена критическая ошибка, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "50": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Обнаружена некритическая ошибка, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "51": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Дверь открылась без сигнала, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "52": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Обнаружено препятствие на закрытии двери, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "53": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Обнаружено препятствие на открытии двери, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "54": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Сигнал \"открытить дверь\" получен, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "55": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Сигнал \"закрыть дверь\" получен, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "56": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Сигнал разрешения для кнопок получен, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "57": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Сигнал скорости получен, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "58": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Сигнал \"игнорировать CAN\" получен, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "59": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Флаг ожидания установок D1, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "60": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Флаг ожидания установок D2, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "61": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Флаг ожидания установок D3, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "62": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Флаг ожидания установок D4, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "63": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Флаг ожидания установок D5, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "64": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Флаг ожидания установок D6, дверь 3", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + } + }, + "TEMPERATURE" : { + "*NAME" : { + "NAME" : "Температура" + }, + "1002": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Температура кабины", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "85": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Температура улицы", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "90": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Температура салона", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "76": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "DAMP SKV ERROR", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "77": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "DT SAL3 ERROR", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "78": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "DT SAL2 ERROR", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "79": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "DT SAL1 ERROR", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "80": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "DT CAB1 ERROR", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "81": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "DAMP INLET SKK ERROR", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "82": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "DAMP OUTLET SKK ERROR", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "83": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "SKK ERROR", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "86": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "SKK2 EN", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "87": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "SKK1 EN", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "88": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "TRO2 EN", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "89": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "TRO1 EN", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "1001": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "SKV ERROR", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "92": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "TRO5 ERROR", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "93": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "TRO4 ERROR", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "94": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "TRO3 ERROR", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "95": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "TRO2 ERROR", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "96": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "TRO1 ERROR", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "97": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "DKV ERROR", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "98": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "CRIT SKV", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "99": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "CRIT SKK", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "100": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "CRIT TRO", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "101": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "IDK EN", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + } + }, + "PNEUMATIC_ROD_CATCHING_SYSTEM" : { + "*NAME" : { + "NAME" : "ПШУ" + }, + "65": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Poles signal state", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "66": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Poles stored position", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "67": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Poles Lift", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "68": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Poles Descent", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "69": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Poles Emergency Descent", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "70": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Poles HV Power Low", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "71": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Poles Power On", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "72": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Poles Light", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "73": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Poles State", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "74": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Left Offset", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "75": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Right Offset", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + } + }, + "DRIVER_CONTROLS" : { + "*NAME" : { + "NAME" : "Органы управления водителя" + }, + "102": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Положение IGN ключа в замке зажигания.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "103": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Аварийный выключатель.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "104": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим питания бортсети IGN", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "105": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим аварийной остановки.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "106": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим включения хода.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "108": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим включения гидростанции.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "109": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Низкий уровень жидкости гидростанции.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "110": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим отключения звуковой сигнализации.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "111": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Положение ACC ключа в замке зажигания.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "112": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим питания бортсети ACC.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "113": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим отключения питания бортсети.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "114": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Датчик ремня безопасности.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "115": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Датчик сидения водителя.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "116": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Звуковой сигнал.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "117": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим эвакуации.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "118": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Флаг аварийного отключения питания.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "119": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Датчик стояночного тормоза.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "120": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "АРСМАШ. Перегрев компрессора.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "121": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "АРСМАШ. Датчик засорения фильтра компрессора.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "122": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "АРСМАШ. Датчик уровня масла компрессора.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "123": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Включение питания компрессора.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "124": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Электростояночный. Удержание машины функцией Autohold.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "125": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Опция электростояночного тормоза.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "126": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Подъем солнцезащитной шторки.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "127": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Опускание солнцезащитной шторки.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "128": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Клапан регулировки рулевой колонки.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "129": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "АРСМАШ. Требование включения компрессора по давлению.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "130": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Маршрутоуказатель.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "131": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "АРСМАШ. Датчик компрессора нижнего давления.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "132": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "АРСМАШ. Датчик компрессора верхнего давления.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "133": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Выключатель USB розеток салона.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "134": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим включения остановочного тормоза.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "135": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Состояние открытых дверей.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "136": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Датчик усталости водителя.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "137": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Сигнал объявления остановок.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "138": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим авто книллинга.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "139": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Скорость т.с.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "140": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Выключатель разрешения заряда тягвой батареи", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "141": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Выключатель габаритных огней.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "142": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Выключатель ближнего света.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "143": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Выключатель дальнего света.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "144": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Кнопка дальнего света", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "145": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Выключатель передних противотуманных фар.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "146": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Выключатель задних противотуманных фонарей.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "147": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим габаритных огней.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "148": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим ближнего света.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "149": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим дальнего света.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "150": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим ДХО.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "151": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим включения передних противотуманных фар.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "152": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим включения задних противотуманных фонарей.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "153": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим включения фонарей стоп. Левый", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "154": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим включения фонарей стоп. Правый", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "155": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим включения фонарей заднего хода.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "156": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Выключатель поворота влево.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "157": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Выключатель поворота вправо.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "158": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Выключатель аварийной сигнализации.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "159": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим поворота влево.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "160": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим поворота вправо.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "161": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Сигнал включения левого указателя поворотов", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "162": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Сигнал включения правого указателя поворотов.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "163": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим включения освещения водителя.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "164": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим включения освещения салона 1.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "165": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим включения освещения салона 2 (аварийный).", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "166": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим стеклоочистителя медленно", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "167": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим стеклоочистителя быстро", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "168": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим стеклоочистителя прерывистый / авто", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "169": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим стеклоомывателя", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "170": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Установленная длительность паузы стеклоочистителя.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "171": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Требование включения света от датчика света", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "172": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим обогрева зеркал.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "173": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим обогрева стекол.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "174": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Режим подогрева дверных площадок", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "525": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Положение реверсора", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "91": { + "IS_ENABLED" : true, + "UNIT_NAME" : "%", + "NAME" : "Угол отклонения ходовой педали", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "521": { + "IS_ENABLED" : true, + "UNIT_NAME" : "%", + "NAME" : "Brake Pedal Position", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "175": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Требование остановочного тормоза", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "176": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Выключатель Hill Holder", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "177": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Выключатель ABS", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "178": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Выключатель ASR", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "1750": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Command signal to activate a level of the rear axle programmed", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "1751": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Command signal to activate a level of the front axle programmed", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "1747": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Command signal to select the kneeling functionality", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "1748": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Command signal to activate the kneeling functionality on the right", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "1749": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Command signal to activate the kneeling functionality on the left", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "7896": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Выбранный режим движения", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + } + }, + "LEAKAGE_CURRENT" : { + "*NAME" : { + "NAME" : "Ток утечки" + }, + "194": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Результат измерений тока утечки", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "195": { + "IS_ENABLED" : true, + "UNIT_NAME" : "mA", + "NAME" : "Ток утечки", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "196": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Результат измерений сопротивления основной изоляции", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "197": { + "IS_ENABLED" : true, + "UNIT_NAME" : "kOhm", + "NAME" : "Сопротивление основной изоляции", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "198": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Номер текущего канала измерений второй ступени изоляции", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + },"199": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Результат измерений сопротивления второй ступени изоляции", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "200": { + "IS_ENABLED" : true, + "UNIT_NAME" : "kOhm", + "NAME" : "Сопротивление второй ступени изоляции текущего канала", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + } + }, + "BRAKE_ERRORS" : { + "*NAME" : { + "NAME" : "Ошибки тормозной системы" + }, + "1439": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Красный индикатор неисправности системы EBS", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + }, + "1438": { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Желтый индикатор неисправности системы ABS/EBS", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false + } + }, + "SINARA" : { + "*NAME" : { + "NAME" : "Синара" + } + }, + "CONTROLLERS" : { + "*NAME" : { + "LOG_ERROR" : "", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "IS_ALARM_ENABLED" : false, + "UNIT_NAME" : "", + "IS_ENABLED" : false, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 0, + "NAME" : "Контроллер", + "ALARM_LOWERBOUND" : 0 + }, + "IsConnectPU008" : { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Наличие связи с ПУ008", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "ALARM_LOWERBOUND" : 1, + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Обрыв жгута шины CAN или отсутствие н/в питания ПУ-008", + "LOG_MANUAL" : "Отключить и включить автомат цепи ПУ-008, в случае сохранения неисправности составить заявку на ремонт", + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true + }, + "IsConnectBtvc03" : { + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : true, + "LOG_ERROR" : "Обрыв жгута шины CAN или отсутствие н/в питания БТВЦ-03", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "Отключить и включить автомат цепи БСПЦ-03, в случае сохранения неисправности составить заявку на ремонт", + "ALARM_LOWERBOUND" : 1, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Наличие связи с БТВЦ-03" + }, + "ControllerPosition" : { + "IS_ALARM_ENABLED" : false, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "LOG_MANUAL" : "", + "LOG_ERROR" : "", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "ALARM_LOWERBOUND" : 1, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Позиция контроллера", + "IS_ENABLED" : true, + "UNIT_NAME" : "" + }, + "IsConnectBsptM1" : { + "ALARM_LOWERBOUND" : 1, + "NAME" : "Наличие связи с БСПТ-М1", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "Отключить и включить автомат цепи БСПТ-М1, в случае сохранения неисправности составить заявку на ремонт", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Обрыв жгута шины CAN или отсутствие н/в питания БСПТ-М1" + } + }, + "TractionConverter" : { + "IsConnectBtvc" : { + "NAME" : "Наличие связи с блоком БТВЦ", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_LOWERBOUND" : 1, + "LOG_MANUAL" : "Необходимо выключить/включить соответствующий и в случае сохранения неисправности составить заявку на ремонт", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Отсутствие связи с БТВЦ", + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0 + }, + "ErrorBtvc" : { + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "IS_ALARM_ENABLED" : true, + "LOG_ERROR" : "Срабатывание одной из защит БТВЦ-03", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "При однократном или редком (1 раз в час) Проявлении, сбросить защиту виртуальной кнопкой «сброс защиты». В случае частого появления, отключить АВДУ и питание 24В неисправного привода и следовать в парк", + "ALARM_LOWERBOUND" : 0, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Ошибки в тяговом преобразователе БТВЦ-03" + }, + "CurrentBspt" : { + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Превышено максимально допустимое значение входного тока БСПТ-М1", + "LOG_MANUAL" : "Отключить и включить вагон, в случае сохранения неисправности отставить вагон от эксплуатации", + "ALARM_UPPERBOUND" : 250, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "NAME" : "Входной ток БСПТ-М1", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "ALARM_LOWERBOUND" : -250 + }, + "VoltageBspt" : { + "ALARM_LOWERBOUND" : 0, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "NAME" : "Входное напряжение БСПТ-М1", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "ALARM_UPPERBOUND" : 850, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true, + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Превышение входного напряжения БСПТ-М1", + "LOG_MANUAL" : "Отключить и включить вагон, в случае сохранения неисправности отставить вагон от эксплуатации" + }, + "IsConnectBspt" : { + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "LOG_MANUAL" : "Необходимо выключить/включить соответствующий и в случае сохранения неисправности составить заявку на ремонт", + "LOG_ERROR" : "Отсутствие связи с БСПТ", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "ALARM_LOWERBOUND" : 1, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Наличие связи с блоком БСПТ", + "UNIT_NAME" : "", + "IS_ENABLED" : true + }, + "VoltageBtvc" : { + "ALARM_LOWERBOUND" : 0, + "NAME" : "Входное напряжение БТВЦ-03", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 850, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "Отключить и включить вагон, в случае сохранения неисправности отставить вагон от эксплуатации", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Превышение входного напряжения БТВЦ-03" + }, + "CurrentBtvc" : { + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 250, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "Отключить и включить вагон, в случае сохранения неисправности отставить вагон от эксплуатации", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Превышено максимально допустимое значение входного тока БТВЦ-03", + "ALARM_LOWERBOUND" : -250, + "NAME" : "Входной ток БТВЦ-03", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "IS_ENABLED" : true, + "UNIT_NAME" : "" + }, + "ErrorBspt" : { + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "IS_ALARM_ENABLED" : true, + "LOG_ERROR" : "Срабатывание одной из защит БСПТ-М1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "При однократном или редком (1 раз в час) Проявлении, сбросить защиту виртуальной кнопкой «сброс защиты». В случае частого появления, отключить АВДУ и питание 24В неисправного привода и следовать в парк", + "ALARM_LOWERBOUND" : 0, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Ошибки в тяговом преобразователе БСПТ-М1" + }, + "*NAME" : { + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "", + "LOG_MANUAL" : "", + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : false, + "IS_ENABLED" : false, + "UNIT_NAME" : "", + "NAME" : "Тяговый преобразователь", + "ALARM_COOLDOWN" : 0, + "ALARM_SLIPPAGE" : 0, + "ALARM_LOWERBOUND" : 0 + } + }, + "POSITIONDOORS" : { + "IsConnectDoor2" : { + "LOG_MANUAL" : "Отключить и включить автомат цепи соответствующего блока, в случае сохранения неисправности отставить вагон.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Отсутствие связи с блоком Дверь 2", + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "NAME" : "Наличие связи с блоком двери 2", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_LOWERBOUND" : 1 + }, + "MotorFailureD2" : { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Отказ мотора двери 2", + "ALARM_LOWERBOUND" : 0, + "LOG_ERROR" : "Engine failure door number 2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "IS_ALARM_ENABLED" : true + }, + "IsConnectDoor1" : { + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Отсутствие связи с блоком Дверь 1", + "LOG_MANUAL" : "Отключить и включить автомат цепи соответствующего блока, в случае сохранения неисправности отставить вагон.", + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "NAME" : "Наличие связи с блоком двери 1", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "ALARM_LOWERBOUND" : 1 + }, + "*NAME" : { + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : false, + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "", + "LOG_MANUAL" : "", + "ALARM_LOWERBOUND" : 0, + "UNIT_NAME" : "", + "IS_ENABLED" : false, + "NAME" : "Позиция дверей", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 0 + }, + "MalfunctionOfSashD3" : { + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Malfunctions of the sensors for the position of the flaps of door number 3", + "LOG_MANUAL" : "", + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "NAME" : "Неисправности датчиков положения створок двери 3", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "ALARM_LOWERBOUND" : 0 + }, + "MotorFailureD3" : { + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "IS_ALARM_ENABLED" : true, + "LOG_ERROR" : "Engine failure door number 3", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "", + "ALARM_LOWERBOUND" : 0, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Отказ мотора двери 3" + }, + "MalfunctionOfSashD1" : { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Неисправности датчиков положения створок двери 1", + "ALARM_LOWERBOUND" : 0, + "LOG_ERROR" : "Malfunctions of the sensors for the position of the flaps of door number 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "IS_ALARM_ENABLED" : true + }, + "LockingFailureD1" : { + "LOG_MANUAL" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Failure of the door locking device number 1", + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "NAME" : "Отказ устройства запираний двери 1", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_LOWERBOUND" : 0 + }, + "IsConnectDoor3" : { + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "LOG_MANUAL" : "Отключить и включить автомат цепи соответствующего блока, в случае сохранения неисправности отставить вагон.", + "LOG_ERROR" : "Отсутствие связи с блоком Дверь 3", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "ALARM_LOWERBOUND" : 1, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Наличие связи с блоком двери 3", + "IS_ENABLED" : true, + "UNIT_NAME" : "" + }, + "MotorFailureD1" : { + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Отказ мотора двери 1", + "ALARM_LOWERBOUND" : 0, + "LOG_ERROR" : "Engine failure door number 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "IS_ALARM_ENABLED" : true + }, + "LockingFailureD3" : { + "ALARM_LOWERBOUND" : 0, + "NAME" : "Отказ устройства запираний двери 3", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Failure of the door locking device number 3" + }, + "LockingFailureD2" : { + "LOG_MANUAL" : "", + "LOG_ERROR" : "Failure of the door locking device number 2", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Отказ устройства запираний двери 2", + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_LOWERBOUND" : 0 + }, + "IsConnectDoor4" : { + "ALARM_LOWERBOUND" : 1, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Наличие связи с блоком двери 4", + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "LOG_MANUAL" : "Отключить и включить автомат цепи соответствующего блока, в случае сохранения неисправности отставить вагон.", + "LOG_ERROR" : "Отсутствие связи с блоком Дверь 4", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "" + }, + "LockingFailureD4" : { + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Отказ устройства запираний двери 4", + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_LOWERBOUND" : 0, + "LOG_MANUAL" : "", + "LOG_ERROR" : "Failure of the door locking device number 4", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0 + }, + "MalfunctionOfSashD4" : { + "ALARM_LOWERBOUND" : 0, + "NAME" : "Неисправности датчиков положения створок двери 4", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Malfunctions of the sensors for the position of the flaps of door number 4" + }, + "MalfunctionOfSashD2" : { + "ALARM_LOWERBOUND" : 0, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Неисправности датчиков положения створок двери 2", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "IS_ALARM_ENABLED" : true, + "LOG_ERROR" : "Malfunctions of the sensors for the position of the flaps of door number 2", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "" + }, + "MotorFailureD4" : { + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true, + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Engine failure door number 4", + "LOG_MANUAL" : "", + "ALARM_LOWERBOUND" : 0, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Отказ мотора двери 4", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10 + } + }, + "NIITM" : { + "IsConnectNiiTm" : { + "LOG_MANUAL" : "Необходимо выключить/включить соответствующий и в случае сохранения неисправности составить заявку на ремонт", + "LOG_ERROR" : "Отсутствие связи с НИИ ТМ", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Наличие связи с блоком НИИ ТМ", + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_LOWERBOUND" : 1 + }, + "*NAME" : { + "IS_ALARM_ENABLED" : false, + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "", + "ALARM_LOWERBOUND" : 0, + "NAME" : "НИИ ТМ", + "ALARM_COOLDOWN" : 0, + "ALARM_SLIPPAGE" : 0, + "IS_ENABLED" : false, + "UNIT_NAME" : "" + }, + "SystemError" : { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Ошибки в работе оборудования", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "ALARM_LOWERBOUND" : 0, + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Ошибка выявленна алгоритмами самодиагностики оборудования", + "LOG_MANUAL" : "Необходимо выключить/включить соответствующий и в случае сохранения неисправности составить заявку на ремонт", + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true + } + }, + "PANTOGRAF" : { + "SwitcherUp" : { + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Концевой выключатель на подъем", + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_LOWERBOUND" : -1, + "LOG_MANUAL" : "Необходимо проверить фактическое положение токоприёмника и произвести поднятие/опускание вручную и составить заявку на ремонт", + "LOG_ERROR" : "Неисправен концевой выключатель на подъем пантографа", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "IS_ALARM_ENABLED" : false, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 60 + }, + "OperationUp" : { + "IS_ALARM_ENABLED" : false, + "ALARM_UPPERBOUND" : 60, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "", + "ALARM_LOWERBOUND" : -1, + "NAME" : "Команда на включение подъёма", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "IS_ENABLED" : true, + "UNIT_NAME" : "" + }, + "*NAME" : { + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "", + "LOG_MANUAL" : "", + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : false, + "UNIT_NAME" : "", + "IS_ENABLED" : false, + "NAME" : "Пантограф", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 0, + "ALARM_LOWERBOUND" : 0 + }, + "SwitcherDown" : { + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Концевой выключатель на опускание", + "ALARM_LOWERBOUND" : -1, + "LOG_ERROR" : "Неисправен концевой выключатель на подъем пантографа", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "Необходимо проверить фактическое положение токоприёмника и произвести поднятие/опускание вручную и составить заявку на ремонт", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 60, + "IS_ALARM_ENABLED" : false + }, + "Pvs04" : { + "LOG_ERROR" : "Нет связи с пультом ПВС-04", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "Отключить и включить автомат цепи ПУ008, в случае сохранения неисправности составить заявку на ремонт", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : true, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Наличие связи с ПВС-04 ", + "ALARM_LOWERBOUND" : 1 + }, + "OperationDown" : { + "ALARM_LOWERBOUND" : -1, + "NAME" : "Команда на включение опускание", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "IS_ALARM_ENABLED" : false, + "ALARM_UPPERBOUND" : 60, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "" + } + }, + "POSITIONBRAKE" : { + "BrakeOnBspt" : { + "ALARM_LOWERBOUND" : 1, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Механический тормоз включён БСПТ-М1", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : false, + "LOG_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "" + }, + "CorrectBrakePos4" : { + "LOG_MANUAL" : "Необходимо отключить и включить автомат цепи тормоза, в случае сохранения неисправности отставить вагон.", + "LOG_ERROR" : "Неправильное положение тормоза 4", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Правильное положение тормоза 4", + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_LOWERBOUND" : 1 + }, + "CorrectBrakePos2" : { + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true, + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Неправильное положение тормоза 2", + "LOG_MANUAL" : "Необходимо отключить и включить автомат цепи тормоза, в случае сохранения неисправности отставить вагон.", + "ALARM_LOWERBOUND" : 1, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "NAME" : "Правильное положение тормоза 2", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10 + }, + "CorrectBrakePos3" : { + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : true, + "LOG_ERROR" : "Неправильное положение тормоза 3", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "Необходимо отключить и включить автомат цепи тормоза, в случае сохранения неисправности отставить вагон.", + "ALARM_LOWERBOUND" : 1, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Правильное положение тормоза 3" + }, + "IsConnectBrake1" : { + "ALARM_LOWERBOUND" : 1, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Наличие связи с блоком тормоза 1", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true, + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Отсутствие связи с блоком Тормоз 1", + "LOG_MANUAL" : "Необходимо отключить и включить автомат цепи тормоза, в случае сохранения неисправности отставить вагон." + }, + "IsConnectBrake4" : { + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "LOG_MANUAL" : "Необходимо отключить и включить автомат цепи тормоза, в случае сохранения неисправности отставить вагон.", + "LOG_ERROR" : "Отсутствие связи с блоком Тормоз 4", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "ALARM_LOWERBOUND" : 1, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Наличие связи с блоком тормоза 4", + "IS_ENABLED" : true, + "UNIT_NAME" : "" + }, + "*NAME" : { + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : false, + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "", + "LOG_MANUAL" : "", + "ALARM_LOWERBOUND" : 0, + "UNIT_NAME" : "", + "IS_ENABLED" : false, + "NAME" : "Тормоз", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 0 + }, + "IsConnectBrake3" : { + "ALARM_LOWERBOUND" : 1, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Наличие связи с блоком тормоза 3", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true, + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Отсутствие связи с блоком Тормоз 3", + "LOG_MANUAL" : "Необходимо отключить и включить автомат цепи тормоза, в случае сохранения неисправности отставить вагон." + }, + "IsConnectBrake2" : { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Наличие связи с блоком тормоза 2", + "ALARM_LOWERBOUND" : 1, + "LOG_ERROR" : "Отсутствие связи с блоком Тормоз 2", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "Необходимо отключить и включить автомат цепи тормоза, в случае сохранения неисправности отставить вагон.", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : true + }, + "CorrectBrakePos1" : { + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : true, + "LOG_ERROR" : "Неправильное положение тормоза 1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "Необходимо отключить и включить автомат цепи тормоза, в случае сохранения неисправности отставить вагон.", + "ALARM_LOWERBOUND" : 1, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Правильное положение тормоза 1" + }, + "BrakeOnBtvc" : { + "LOG_ERROR" : "", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : false, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Механический тормоз включён БТВЦ-03", + "ALARM_LOWERBOUND" : 1 + } + }, + "BRAKE" : { + "IsConnectBsptM1" : { + "LOG_MANUAL" : "Отключить и включить автомат цепи БСПТ-М1, в случае сохранения неисправности составить заявку на ремонт", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Обрыв жгута проводов шины CAN или отсутствие сетевого источника питания BSPT-M1", + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "NAME" : "Наличие связи с БСПТ-М1", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_LOWERBOUND" : 1 + }, + "IsConnectPU008" : { + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : true, + "LOG_ERROR" : "Обрыв жгута проводов шины CAN или отсутствие сетевого источника питания PU-008", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "Отключить и включить автомат цепи ПУ-008, в случае сохранения неисправности составить заявку на ремонт", + "ALARM_LOWERBOUND" : 1, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Наличие связи с ПУ008" + }, + "SignOfBrakeBtvc" : { + "IS_ALARM_ENABLED" : false, + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "", + "ALARM_LOWERBOUND" : 1, + "NAME" : "Признак тормоза от БТВЦ-03", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "UNIT_NAME" : "", + "IS_ENABLED" : true + }, + "*NAME" : { + "LOG_MANUAL" : "", + "LOG_ERROR" : "", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "ALARM_COOLDOWN" : 0, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Признак тормоза", + "UNIT_NAME" : "", + "IS_ENABLED" : false, + "ALARM_LOWERBOUND" : 0 + }, + "BtvcInOrder" : { + "NAME" : "Исправность платы управления БТВЦ-03", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_LOWERBOUND" : 1, + "LOG_MANUAL" : "Отключить и включить вагон, в случае сохранения неисправности отставить вагон от эксплуатации", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Неисправность платы управления BTVC-03", + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0 + }, + "SignOfBrakeBspt" : { + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : false, + "LOG_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "", + "ALARM_LOWERBOUND" : 1, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Признак тормоза от БСПТ-М1" + }, + "BsptInOrder" : { + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "LOG_MANUAL" : "Отключить и включить вагон, в случае сохранения неисправности отставить вагон от эксплуатации", + "LOG_ERROR" : "Неисправность платы управления BSPT-M1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "ALARM_LOWERBOUND" : 1, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Исправность платы управления БСПТ-М1", + "IS_ENABLED" : true, + "UNIT_NAME" : "" + }, + "SignOfBrakeDriver" : { + "ALARM_LOWERBOUND" : 1, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Признак тормоза от контроллера водителя", + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "IS_ALARM_ENABLED" : false, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "LOG_MANUAL" : "", + "LOG_ERROR" : "", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ] + }, + "IsConnectBtvc03" : { + "NAME" : "Наличие связи с БТВЦ-03", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_LOWERBOUND" : 1, + "LOG_MANUAL" : "Отключить и включить автомат цепи БСПЦ-03, в случае сохранения неисправности составить заявку на ремонт", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Обрыв жгута проводов шины CAN или отсутствие сетевого источника питания BTVC-03", + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0 + } + }, + "MOVE" : { + "BtvcInOrder" : { + "ALARM_LOWERBOUND" : 1, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Исправность платы управления БТВЦ-03", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : true, + "LOG_ERROR" : "Неисправность платы управления BTVC-03", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "Отключить и включить вагон, в случае сохранения неисправности отставить вагон от эксплуатации" + }, + "SignOfaLoweredRamp" : { + "LOG_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : false, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Признак, что опущена аппарель", + "ALARM_LOWERBOUND" : 1 + }, + "SignOfaReverseBack" : { + "ALARM_LOWERBOUND" : 1, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Признак реверс назад", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : false, + "LOG_ERROR" : "", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "" + }, + "BsptVoltageCN" : { + "ALARM_LOWERBOUND" : 1, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Признак наличия напряжения КС БСПТ-М1", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : false, + "LOG_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "" + }, + "BsptInOrder" : { + "LOG_ERROR" : "Неисправность платы управления BSPT-M1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "Отключить и включить вагон, в случае сохранения неисправности отставить вагон от эксплуатации", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : true, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Исправность платы управления БСПТ-М1", + "ALARM_LOWERBOUND" : 1 + }, + "SignOfMoveDriver" : { + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : false, + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "", + "LOG_MANUAL" : "", + "ALARM_LOWERBOUND" : 1, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Признак хода от контроллера водителя", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0 + }, + "IsConnectBtvc03" : { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Наличие связи с БТВЦ-03", + "ALARM_LOWERBOUND" : 1, + "LOG_ERROR" : "Обрыв жгута шины CAN или отсутствие н/в питания BTVC-03", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "Отключить и включить автомат цепи БСПЦ-03, в случае сохранения неисправ-ности составить заяв-ку на ремонт", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : true + }, + "BtvcVoltageCN" : { + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : false, + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "", + "LOG_MANUAL" : "", + "ALARM_LOWERBOUND" : 1, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "NAME" : "Признак наличия напряжения КС БТВЦ-03", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10 + }, + "SignOfMoveBtvc" : { + "ALARM_LOWERBOUND" : 1, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Признак хода от БТВЦ-03", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : false, + "LOG_ERROR" : "", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "" + }, + "IsConnectBsptM1" : { + "NAME" : "Наличие связи с БСПТ-М1", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_LOWERBOUND" : 1, + "LOG_MANUAL" : "Отключить и включить автомат цепи БСПТ-М1, в случае сохранения неисправности составить заявку на ремонт", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Обрыв жгута шины CAN или отсутствие н/в питания BSPT-M1", + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0 + }, + "SignOfaReverseForward" : { + "IS_ALARM_ENABLED" : false, + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "", + "ALARM_LOWERBOUND" : 1, + "NAME" : "Признак реверс вперёд", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "IS_ENABLED" : true, + "UNIT_NAME" : "" + }, + "SignOfMoveBspt" : { + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : false, + "LOG_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "", + "ALARM_LOWERBOUND" : 1, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Признак хода от БСПТ-М1" + }, + "IsConnectPU008" : { + "LOG_MANUAL" : "Отключить и включить автомат цепи ПУ-008, в случае сохранения неисправности составить заявку на ремонт", + "LOG_ERROR" : "Обрыв жгута шины CAN или отсутствие н/в питания PU-008", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Наличие связи с ПУ008", + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_LOWERBOUND" : 1 + }, + "SignOfBlockingMove" : { + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Блокировка хода", + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_LOWERBOUND" : 1, + "LOG_MANUAL" : "", + "LOG_ERROR" : "", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1 + }, + "*NAME" : { + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : false, + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "", + "LOG_MANUAL" : "", + "ALARM_LOWERBOUND" : 0, + "IS_ENABLED" : false, + "UNIT_NAME" : "", + "NAME" : "Признак хода", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 0 + } + }, + "MEDIA" : { + "*NAME" : { + "ALARM_LOWERBOUND" : 0, + "IS_ENABLED" : false, + "UNIT_NAME" : "", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 0, + "NAME" : "Медиацентр", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "IS_ALARM_ENABLED" : false, + "LOG_ERROR" : "", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "" + }, + "GPS_LONG" : { + "ALARM_LOWERBOUND" : 2, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "NAME" : "Координата долготы", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "ALARM_UPPERBOUND" : 9, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : false, + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Данных о долготе нахождения транспортного средства нет.", + "LOG_MANUAL" : "" + }, + "GPS_SPEED" : { + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 9, + "IS_ALARM_ENABLED" : false, + "LOG_ERROR" : "Данные о скорости автомобиля по GPS отсутствуют.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "", + "ALARM_LOWERBOUND" : 2, + "UNIT_NAME" : "км/ч", + "IS_ENABLED" : true, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Скорость ТС по GPS" + }, + "IS_CONNECT" : { + "ALARM_LOWERBOUND" : 1, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Работа медиакомплекса", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true, + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Отсутствие связи с Медиакомплексом.", + "LOG_MANUAL" : "" + }, + "CONTENT" : { + "LOG_MANUAL" : "", + "LOG_ERROR" : "В медиа-комплексе нет контента.", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Занятая память медиаданными", + "UNIT_NAME" : "мб", + "IS_ENABLED" : true, + "ALARM_LOWERBOUND" : 0 + }, + "ROUTE_INFO" : { + "IS_ALARM_ENABLED" : false, + "ALARM_UPPERBOUND" : 9, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "", + "ALARM_LOWERBOUND" : 2, + "NAME" : "Маршрут", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "UNIT_NAME" : "", + "IS_ENABLED" : true + }, + "STORAGE" : { + "ALARM_LOWERBOUND" : 0, + "NAME" : "Флаг ошибки чтения плейлиста.", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Ошибка считывания данных с карты памяти." + }, + "GPS_LAT" : { + "IS_ALARM_ENABLED" : false, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 9, + "LOG_MANUAL" : "", + "LOG_ERROR" : "Данных о широте нахождения транспортного средства нет.", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "ALARM_LOWERBOUND" : 2, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Координата широты", + "UNIT_NAME" : "", + "IS_ENABLED" : true + } + }, + "ACB" : { + "*NAME" : { + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 0, + "NAME" : "АКБ", + "IS_ENABLED" : false, + "UNIT_NAME" : "", + "ALARM_LOWERBOUND" : 0, + "LOG_MANUAL" : "", + "LOG_ERROR" : "", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : false, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0 + }, + "VoltageOfACB1" : { + "IS_ENABLED" : true, + "UNIT_NAME" : "В", + "NAME" : "Напряжение АКб 1 вагон", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "ALARM_LOWERBOUND" : 21, + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Недопустимое напряжение батареи", + "LOG_MANUAL" : "Отключить и включить высоковольтный автомат преобразователя напряжения, в случае сохранения неисправности отставить вагон от эксплуатации", + "ALARM_UPPERBOUND" : 32, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true + }, + "ErrorLkBkv" : { + "ALARM_LOWERBOUND" : 1, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Флаг ошибки ЛК БКВ", + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "IS_ALARM_ENABLED" : false, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "LOG_MANUAL" : "", + "LOG_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "" + }, + "CurrentOfACB1" : { + "LOG_ERROR" : "Избыточный ток батареи", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "Отключить и включить высоковольтный автомат преобразователя напряжения, в случае сохранения неисправности отставить вагон от эксплуатации", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 250, + "EXTRA" : "{\"isBool\":false,\"isHide\":false}", + "IS_ALARM_ENABLED" : true, + "UNIT_NAME" : "А", + "IS_ENABLED" : true, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Ток АКБ 1 вагон", + "ALARM_LOWERBOUND" : -250 + }, + "ChargeOfACB1" : { + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Ошибка ППН (преобразователь 550-24)", + "LOG_MANUAL" : "Отключить и включить высоковольтный автомат преобразователя напряжения, в случае сохранения неисправности составить заявку на ремонт", + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true, + "EXTRA" : "{\"isBool\":false,\"isHide\":false}", + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "NAME" : "Ошибка ППН (преобразователь 550-24)", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "ALARM_LOWERBOUND" : 0 + } + }, + "BTAB" : { + "VoltageOfACB1U1" : { + "ALARM_LOWERBOUND" : 0, + "IS_ENABLED" : true, + "UNIT_NAME" : "В", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Вагон 1 напряжение U1", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 250, + "IS_ALARM_ENABLED" : true, + "LOG_ERROR" : "Недопустимое напряжение тяговой АКБ", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "Отключить и включить высоковольтный автомат преобразователя напряжения, в случае сохранения неисправности отставить вагон" + }, + "IsConnect" : { + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Обрыв жгута шины CAN или отсутствие н/в питания БТАБ", + "LOG_MANUAL" : "Отключить и включить автомат цепи БТАБ, в случае сохранения неисправности составить заявку на ремонт", + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "NAME" : "Наличие связи с блоком ", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "ALARM_LOWERBOUND" : 1 + }, + "VoltageOfACB1U5" : { + "LOG_ERROR" : "Недопустимое напряжение тяговой АКБ", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "Отключить и включить высоковольтный автомат преобразователя напряжения, в случае сохранения неисправности отставить вагон", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 250, + "IS_ALARM_ENABLED" : true, + "UNIT_NAME" : "В", + "IS_ENABLED" : true, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Вагон 1 напряжение U5", + "ALARM_LOWERBOUND" : 0 + }, + "VoltageOfACB1U3" : { + "LOG_ERROR" : "Недопустимое напряжение тяговой АКБ", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "Отключить и включить высоковольтный автомат преобразователя напряжения, в случае сохранения неисправности отставить вагон", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 250, + "IS_ALARM_ENABLED" : true, + "UNIT_NAME" : "В", + "IS_ENABLED" : true, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Вагон 1 напряжение U3", + "ALARM_LOWERBOUND" : 0 + }, + "VoltageOfACB1U6" : { + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 250, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "Отключить и включить высоковольтный автомат преобразователя напряжения, в случае сохранения неисправности отставить вагон", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Недопустимое напряжение тяговой АКБ", + "ALARM_LOWERBOUND" : 0, + "NAME" : "Вагон 1 напряжение U6", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "UNIT_NAME" : "В", + "IS_ENABLED" : true + }, + "*NAME" : { + "IS_ENABLED" : false, + "UNIT_NAME" : "", + "ALARM_COOLDOWN" : 0, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Блок тяговых аккумуляторных батарей", + "ALARM_LOWERBOUND" : 0, + "LOG_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "IS_ALARM_ENABLED" : false + }, + "VoltageOfACB1U4" : { + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Недопустимое напряжение тяговой АКБ", + "LOG_MANUAL" : "Отключить и включить высоковольтный автомат преобразователя напряжения, в случае сохранения неисправности отставить вагон", + "ALARM_UPPERBOUND" : 250, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true, + "UNIT_NAME" : "В", + "IS_ENABLED" : true, + "NAME" : "Вагон 1 напряжение U4", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "ALARM_LOWERBOUND" : 0 + }, + "CurrentOfACB1" : { + "ALARM_LOWERBOUND" : -250, + "NAME" : "Вагон 1 Ток АКБ", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "IS_ENABLED" : true, + "UNIT_NAME" : "А", + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 250, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "Отключить и включить высоковольтный автомат преобразователя напряжения, в случае сохранения неисправности отставить вагон", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Превышение тока тяговой АКБ" + }, + "VoltageOfACB1U2" : { + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 250, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "Отключить и включить высоковольтный автомат преобразователя напряжения, в случае сохранения неисправности отставить вагон", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Недопустимое напряжение тяговой АКБ", + "ALARM_LOWERBOUND" : 0, + "NAME" : "Вагон 1 напряжение U2", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "UNIT_NAME" : "В", + "IS_ENABLED" : true + } + }, + "MILEAGE" : { + "VehicleMileage1" : { + "ALARM_LOWERBOUND" : 2, + "IS_ENABLED" : true, + "UNIT_NAME" : "км", + "NAME" : "Пробег БСПТ 1", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "ALARM_UPPERBOUND" : 9, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : false, + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "", + "LOG_MANUAL" : "" + }, + "*NAME" : { + "IS_ALARM_ENABLED" : false, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "LOG_MANUAL" : "", + "LOG_ERROR" : "", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "ALARM_LOWERBOUND" : 0, + "ALARM_COOLDOWN" : 0, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Пробег", + "UNIT_NAME" : "", + "IS_ENABLED" : false + }, + "VehicleMileage2" : { + "UNIT_NAME" : "км", + "IS_ENABLED" : true, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Пробег БСПТ 2", + "ALARM_LOWERBOUND" : 2, + "LOG_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 9, + "IS_ALARM_ENABLED" : false + } + }, + "E-PKV" : { + "IsConnectEpkv" : { + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : true, + "LOG_ERROR" : "Отсутствие связи с ЛК-ВИЗ", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "Отключить и включить автомат цепи ЛК-ВИЗ, в случае сохранения неисправности отставить вагон.", + "ALARM_LOWERBOUND" : 1, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Наличие связи с блоком ЛК-ВИЗ" + } + }, + "BZK" : { + "IncorrectStatusCabinHeating2" : { + "NAME" : "Неправильное состояние обогрева кабины (2 ступень)", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_LOWERBOUND" : 0, + "LOG_MANUAL" : "Необходимо включить/выключить соответствующий контактор или группу контакторов на ЛК ВИЗ. При сохранении неправильного состояния отставить вагон.", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Неправильное состояние высоковольтных контакторов: Cabin heating (2 stage)", + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0 + }, + "IncorrectStatusCabinHeating1" : { + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "IS_ALARM_ENABLED" : true, + "LOG_ERROR" : "Неправильное состояние высоковольтных контакторов: Cabin heating (1 stage)", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "Необходимо включить/выключить соответствующий контактор или группу контакторов на ЛК ВИЗ. При сохранении неправильного состояния отставить вагон.", + "ALARM_LOWERBOUND" : 0, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Неправильное состояние обогрева кабины (1 ступень)" + }, + "IsConnectBzk" : { + "LOG_MANUAL" : "Отключить и включить автомат цепи БКЗ, в случае сохранения неисправности составить заявку на ремонт", + "LOG_ERROR" : "Обрыв жгута шины CAN или отсутствие н/в питания БКЗ", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Наличие связи с блоком", + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_LOWERBOUND" : 1 + }, + "IncorrectStatusAVDU2" : { + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "NAME" : "Неправильное состояние АВДУ2", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "ALARM_LOWERBOUND" : 0, + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Неправильное состояние AVDU2", + "LOG_MANUAL" : "Необходимо включить/выключить соответствующий АВДУ на ЛК ВИЗ. При сохранении неправильного состояния отставить вагон", + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true + }, + "IncorrectStatusAVDU1" : { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Неправильное состояние АВДУ-1", + "ALARM_LOWERBOUND" : 0, + "LOG_ERROR" : "Неправильное состояние AVDU1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "Необходимо включить/выключить соответствующий АВДУ на ЛК ВИЗ. При сохранении неправильного состояния отставить вагон", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "EXTRA" : "{\"isBool\":false,\"isHide\":false}", + "IS_ALARM_ENABLED" : true + }, + "*NAME" : { + "IS_ALARM_ENABLED" : false, + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "", + "ALARM_LOWERBOUND" : 0, + "NAME" : "БЗК", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 0, + "IS_ENABLED" : false, + "UNIT_NAME" : "" + }, + "IncorrectStatusInteriorHeating2" : { + "LOG_MANUAL" : "Необходимо включить/выключить соответствующий контактор или группу контакторов на ЛК ВИЗ. При сохранении неправильного состояния отставить вагон.", + "LOG_ERROR" : "Неправильное состояние высоковольтных контакторов: Interior heating (2 stage)", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Неправильное состояние обогрева салона (2 ступень)", + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_LOWERBOUND" : 0 + }, + "IncorrectStatusInteriorHeating1" : { + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Неправильное состояние обогрева салона (1 ступень)", + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_LOWERBOUND" : 0, + "LOG_MANUAL" : "Необходимо включить/выключить соответствующий контактор или группу контакторов на ЛК ВИЗ. При сохранении неправильного состояния отставить вагон.", + "LOG_ERROR" : "Неправильное состояние высоковольтных контакторов: Interior heating (1 stage)", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0 + }, + "IncorrectStatusInteriorHeating3" : { + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "IS_ALARM_ENABLED" : true, + "LOG_ERROR" : "Неправильное состояние высоковольтных контакторов: Interior heating (3 stage)", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "Необходимо включить/выключить соответствующий контактор или группу контакторов на ЛК ВИЗ. При сохранении неправильного состояния отставить вагон.", + "ALARM_LOWERBOUND" : 0, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Неправильное состояние обогрева салона (3 ступень)" + }, + "IncorrectStatusQF" : { + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "LOG_MANUAL" : "Необходимо включить/выключить соответствующий автоматический выключатель на ЛК ВИЗ. При сохранении неправильного состояния отставить вагон", + "LOG_ERROR" : "Неправильное состояние автоматических выключателей QF1-QF4", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "ALARM_LOWERBOUND" : 0, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Неправильное состояние автоматических выключателей QF1-QF4", + "IS_ENABLED" : true, + "UNIT_NAME" : "" + } + }, + "LKVIZ" : { + "StateMicroclimate" : { + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : false, + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "", + "LOG_MANUAL" : "", + "ALARM_LOWERBOUND" : 1, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Состояние системы микроклимата", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10 + }, + "*NAME" : { + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "IS_ALARM_ENABLED" : false, + "LOG_ERROR" : "", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "", + "ALARM_LOWERBOUND" : 0, + "UNIT_NAME" : "", + "IS_ENABLED" : false, + "ALARM_COOLDOWN" : 0, + "ALARM_SLIPPAGE" : 0, + "NAME" : "ЛК ВИЗ" + }, + "IsConnectLkViz" : { + "ALARM_LOWERBOUND" : 1, + "NAME" : "Наличие связи с блоком ЛК-ВИЗ", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "Отключить и включить автомат цепи ЛК-ВИЗ, в случае сохранения неисправности отставить вагон.", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Отсутствие связи с ЛК-ВИЗ" + } + }, + "REVERSE" : { + "IsConnectBsptM1" : { + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "LOG_MANUAL" : "Отключить и включить автомат цепи БСПТ-М1, в случае сохранения неисправности составить заявку на ремонт", + "LOG_ERROR" : "Обрыв жгута шины CAN или отсутствие н/в питания BSPT-M1", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "ALARM_LOWERBOUND" : 1, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Соединение с БСПТ-М1", + "UNIT_NAME" : "", + "IS_ENABLED" : true + }, + "OrderForward" : { + "IS_ALARM_ENABLED" : false, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "LOG_MANUAL" : "", + "LOG_ERROR" : "", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "ALARM_LOWERBOUND" : 1, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Команда вперед", + "UNIT_NAME" : "", + "IS_ENABLED" : true + }, + "BackBsptM1" : { + "ALARM_LOWERBOUND" : 1, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Реверс назад БСПТ-М1", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : false, + "LOG_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "" + }, + "IsConnectPU008" : { + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Обрыв жгута шины CAN или отсутствие н/в питания PU-008", + "LOG_MANUAL" : "Отключить и включить автомат цепи ПУ-008, в случае сохранения неисправности составить заявку на ремонт", + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Соединение с ПУ-008", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "ALARM_LOWERBOUND" : 1 + }, + "BackBtvc03" : { + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "", + "LOG_MANUAL" : "", + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : false, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "NAME" : "Реверс назад БТВЦ-03", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "ALARM_LOWERBOUND" : 1 + }, + "*NAME" : { + "ALARM_LOWERBOUND" : 0, + "IS_ENABLED" : false, + "UNIT_NAME" : "", + "NAME" : "Реверс", + "ALARM_COOLDOWN" : 0, + "ALARM_SLIPPAGE" : 0, + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : false, + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "", + "LOG_MANUAL" : "" + }, + "ForwardBtvc03" : { + "ALARM_LOWERBOUND" : 1, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "NAME" : "Реверс вперед БТВЦ-03", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : false, + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "", + "LOG_MANUAL" : "" + }, + "ForwardBsptM1" : { + "ALARM_LOWERBOUND" : 1, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Реверс вперед БСПТ-М1", + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "IS_ALARM_ENABLED" : false, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "LOG_MANUAL" : "", + "LOG_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "" + }, + "BtvcInOrder" : { + "ALARM_LOWERBOUND" : 1, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Исправность платы управления БТВЦ-03", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : true, + "LOG_ERROR" : "Неисправность платы управления БТВЦ-03", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "Отключить и включить вагон, в случае сохранения неисправности отставить вагон от эксплуатации" + }, + "OrderBack" : { + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : false, + "LOG_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "", + "ALARM_LOWERBOUND" : 1, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Команда назад" + }, + "BsptInOrder" : { + "NAME" : "Исправность платы управления БСПТ-М1", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_LOWERBOUND" : 1, + "LOG_MANUAL" : "Отключить и включить вагон, в случае сохранения неисправности отставить вагон от эксплуатации", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Неисправность платы управления БСПТ-М1", + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0 + }, + "IsConnectBtvc03" : { + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true, + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Обрыв жгута шины CAN или отсутствие н/в питания BTVC-03", + "LOG_MANUAL" : "Отключить и включить автомат цепи БТВЦ, в случае сохранения неисправности составить заявку на ремонт", + "ALARM_LOWERBOUND" : 1, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Соединение с БТВЦ-03", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0 + } + }, + "COGNITIVE" : { + "*NAME" : { + "LOG_MANUAL" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "", + "IS_ALARM_ENABLED" : false, + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "NAME" : "Когнитив", + "ALARM_COOLDOWN" : 0, + "ALARM_SLIPPAGE" : 0, + "UNIT_NAME" : "", + "IS_ENABLED" : false, + "ALARM_LOWERBOUND" : 0 + }, + "SystemError" : { + "LOG_ERROR" : "Ошибка выявленна алгоритмами самодиагностики оборудования", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "Необходимо выключить/включить соответствующий и в случае сохранения неисправности составить заявку на ремонт", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "IS_ALARM_ENABLED" : true, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Ошибки в работе оборудования", + "ALARM_LOWERBOUND" : 0 + }, + "IsConnectCognitive" : { + "ALARM_LOWERBOUND" : 1, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Наличие связи с блоком Когнитив", + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "LOG_MANUAL" : "Необходимо выключить/включить соответствующий и в случае сохранения неисправности составить заявку на ремонт", + "LOG_ERROR" : "Отсутствие связи с Когнитив", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ] + } + }, + "SPEED" : { + "*NAME" : { + "ALARM_LOWERBOUND" : 0, + "NAME" : "Скорость", + "ALARM_COOLDOWN" : 0, + "ALARM_SLIPPAGE" : 0, + "IS_ENABLED" : false, + "UNIT_NAME" : "", + "IS_ALARM_ENABLED" : false, + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "" + }, + "VehicleSpeed2" : { + "ALARM_LOWERBOUND" : -1, + "NAME" : "Скорость БСПТ 2", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "UNIT_NAME" : "км/ч", + "IS_ENABLED" : true, + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 60, + "HUGE_ALARM_COOLDOWN" : 600, + "LOG_MANUAL" : "Нужно сбавить скорость", + "LOG_HUGE_ERROR" : "Повторное привышение скорости", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Превышение скорости" + }, + "VehicleSpeed1" : { + "HUGE_ALARM_COOLDOWN" : 600, + "ALARM_UPPERBOUND" : 60, + "IS_ALARM_ENABLED" : true, + "LOG_ERROR" : "Превышение скорости", + "LOG_HUGE_ERROR" : "Повторное привышение скорости", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "Нужно сбавить скорость", + "ALARM_LOWERBOUND" : -1, + "IS_ENABLED" : true, + "UNIT_NAME" : "км/ч", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Скорость БСПТ 1" + } + }, + "Zus" : { + "*NAME" : { + "NAME" : "Зарядное устройство ионисторов", + "ALARM_COOLDOWN" : 0, + "ALARM_SLIPPAGE" : 0, + "IS_ENABLED" : false, + "UNIT_NAME" : "", + "ALARM_LOWERBOUND" : 0, + "LOG_MANUAL" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "", + "IS_ALARM_ENABLED" : false, + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0 + }, + "ProtectionOfStepDownTransZus2" : { + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true, + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Ошибка защиты транзисторов понизителя ЗУС-2", + "LOG_MANUAL" : "Необходимо выключить/включить соответствующий и в случае сохранения неисправности составить заявку на ремонт", + "ALARM_LOWERBOUND" : 0, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "NAME" : "Защита транзисторов понизителя ЗУС-2", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0 + }, + "ProtectionOfStepUpTransZus1" : { + "LOG_ERROR" : "Ошибка защиты транзисторов повысителя ЗУС-1", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "Необходимо выключить/включить соответствующий и в случае сохранения неисправности составить заявку на ремонт", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "IS_ALARM_ENABLED" : true, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Защита транзисторов повысителя ЗУС-1", + "ALARM_LOWERBOUND" : 0 + }, + "IsConnectZus1" : { + "ALARM_LOWERBOUND" : 1, + "NAME" : "Наличие связи с блоком ЗУС-1", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "Необходимо выключить/включить соответствующий и в случае сохранения неисправности составить заявку на ремонт", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Отсутствие связи с ЗУС-1" + }, + "ErrorTempZus1" : { + "ALARM_LOWERBOUND" : 0, + "NAME" : "Температура превысила максимально допустимую ЗУС-1", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "Необходимо выключить/включить соответствующий и в случае сохранения неисправности составить заявку на ремонт", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Температура превысила максимально допустимую ЗУС-1" + }, + "ProtectionOfStepDownTransZus1" : { + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "LOG_MANUAL" : "Необходимо выключить/включить соответствующий и в случае сохранения неисправности составить заявку на ремонт", + "LOG_ERROR" : "Ошибка защиты транзисторов понизителя ЗУС-1", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "ALARM_LOWERBOUND" : 0, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Защита транзисторов понизителя ЗУС-1", + "IS_ENABLED" : true, + "UNIT_NAME" : "" + }, + "ErrorTempZus2" : { + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Температура превысила максимально допустимую ЗУС-2", + "ALARM_LOWERBOUND" : 0, + "LOG_ERROR" : "Температура превысила максимально допустимую ЗУС-2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "Необходимо выключить/включить соответствующий и в случае сохранения неисправности составить заявку на ремонт", + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "IS_ALARM_ENABLED" : true + }, + "ProtectionOfStepUpTransZus2" : { + "LOG_MANUAL" : "Необходимо выключить/включить соответствующий и в случае сохранения неисправности составить заявку на ремонт", + "LOG_ERROR" : "Ошибка защиты транзисторов повысителя ЗУС-2", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Защита транзисторов повысителя ЗУС-2", + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_LOWERBOUND" : 0 + }, + "HighVoltageOutputFilterZus1" : { + "LOG_MANUAL" : "Необходимо выключить/включить соответствующий и в случае сохранения неисправности составить заявку на ремонт", + "LOG_ERROR" : "Напряжение на выходном фильтре выше допустимого ЗУС-1", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "Напряжение на выходном фильтре выше допустимого ЗУС-1", + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_LOWERBOUND" : 0 + }, + "ChargeModeZus2" : { + "ALARM_LOWERBOUND" : 1, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "ЗУС-1 работает в режиме заряда", + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "IS_ALARM_ENABLED" : false, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "LOG_MANUAL" : "", + "LOG_ERROR" : "", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ] + }, + "IsConnectZus2" : { + "ALARM_LOWERBOUND" : 1, + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "NAME" : "Наличие связи с блоком ЗУС-2", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "ALARM_UPPERBOUND" : 1, + "HUGE_ALARM_COOLDOWN" : 0, + "IS_ALARM_ENABLED" : true, + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_ERROR" : "Отсутствие связи с ЗУС-2", + "LOG_MANUAL" : "Необходимо выключить/включить соответствующий и в случае сохранения неисправности составить заявку на ремонт" + }, + "ChargeModeZus1" : { + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 1, + "IS_ALARM_ENABLED" : false, + "LOG_ERROR" : "", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_MANUAL" : "", + "ALARM_LOWERBOUND" : 1, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "NAME" : "ЗУС-1 работает в режиме заряда" + }, + "HighVoltageOutputFilterZus2" : { + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0, + "IS_ALARM_ENABLED" : true, + "LOG_ERROR" : "Напряжение на выходном фильтре выше допустимого ЗУС-2", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_MANUAL" : "Необходимо выключить/включить соответствующий и в случае сохранения неисправности составить заявку на ремонт", + "ALARM_LOWERBOUND" : 0, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Напряжение на выходном фильтре выше допустимого ЗУС-2" + }, + "HighVoltageInputFilterZus2" : { + "ALARM_LOWERBOUND" : 0, + "NAME" : "Напряжение на входном фильтре выше допустимого ЗУС-2", + "ALARM_SLIPPAGE" : 0, + "ALARM_COOLDOWN" : 10, + "UNIT_NAME" : "", + "IS_ENABLED" : true, + "IS_ALARM_ENABLED" : true, + "ALARM_UPPERBOUND" : 0, + "HUGE_ALARM_COOLDOWN" : 0, + "LOG_MANUAL" : "Необходимо выключить/включить соответствующий и в случае сохранения неисправности составить заявку на ремонт", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "LOG_HUGE_ERROR" : "", + "LOG_ERROR" : "Напряжение на входном фильтре выше допустимого ЗУС-2" + }, + "HighVoltageInputFilterZus1" : { + "ALARM_COOLDOWN" : 10, + "ALARM_SLIPPAGE" : 0, + "NAME" : "Напряжение на входном фильтре выше допустимого ЗУС-1", + "IS_ENABLED" : true, + "UNIT_NAME" : "", + "ALARM_LOWERBOUND" : 0, + "LOG_MANUAL" : "Необходимо выключить/включить соответствующий и в случае сохранения неисправности составить заявку на ремонт", + "LOG_ERROR" : "Напряжение на входном фильтре выше допустимого ЗУС-1", + "LOG_HUGE_ERROR" : "", + "ARGUS_CAMERAS" : [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "IS_ALARM_ENABLED" : true, + "HUGE_ALARM_COOLDOWN" : 0, + "ALARM_UPPERBOUND" : 0 + } + } + }, + "HOSTS" : [ + { + "DOMAIN" : "", + "PORT" : 0 + } + ], + "SYSTEM" : { + "GROUP" : "", + "MANUFACTURER" : "test", + "TP" : "", + "GOS_NUMBER" : "", + "VIN" : "", + "OPERATOR" : "", + "REG_NUMBER" : "", + "LAST_SERVICE" : 0 + }, + "STORAGE" : { + "STORAGE_SIZE": 3072, + "MAX_VOLUME": 70 + } + } \ No newline at end of file diff --git a/cmd/installer/main.go b/cmd/installer/main.go new file mode 100644 index 0000000..5b85771 --- /dev/null +++ b/cmd/installer/main.go @@ -0,0 +1,24 @@ +package main + +import ( + _ "embed" + "fyne.io/fyne/v2/app" + + "gitea.unprism.ru/KRBL/FemaInstaller/internal/installer" + "gitea.unprism.ru/KRBL/FemaInstaller/internal/ui" +) + +//go:embed defaultSettings.json +var defaultSettings string + +func main() { + // Create application + myApp := app.New() + + // Create installer + femaInstaller := installer.NewInstaller(defaultSettings) + + // Create and show main window + mainWindow := ui.NewMainWindow(myApp, femaInstaller.Install) + mainWindow.ShowAndRun() +} diff --git a/cmd/updater/main.go b/cmd/updater/main.go new file mode 100644 index 0000000..b5f74b6 --- /dev/null +++ b/cmd/updater/main.go @@ -0,0 +1,33 @@ +package main + +import ( + _ "embed" + "fyne.io/fyne/v2/app" + "log" + + "gitea.unprism.ru/KRBL/FemaInstaller/internal/ui" + "gitea.unprism.ru/KRBL/FemaInstaller/internal/updater" + "gitea.unprism.ru/KRBL/FemaInstaller/pkg/config" +) + +//go:embed build +var binaryData []byte + +func main() { + // Load configuration + configPath := updater.GetConfigFilePath() + cfg, err := config.LoadUpdaterConfig(configPath) + if err != nil { + log.Fatalf("Ошибка загрузки конфигурации: %v", err) + } + + // Create application + myApp := app.New() + + // Create updater + femaUpdater := updater.NewUpdater(cfg, binaryData) + + // Create and show updater window + updaterWindow := ui.NewUpdaterWindow(myApp, cfg, femaUpdater.Update) + updaterWindow.ShowAndRun() +} diff --git a/cmd/updater/updater_config.json b/cmd/updater/updater_config.json new file mode 100644 index 0000000..3a412a6 --- /dev/null +++ b/cmd/updater/updater_config.json @@ -0,0 +1,6 @@ +{ + "ip": "192.168.111.111", + "port": "22", + "login": "root", + "password": "orangepi" +} \ No newline at end of file diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..6c6ac38 --- /dev/null +++ b/go.mod @@ -0,0 +1,45 @@ +module gitea.unprism.ru/KRBL/FemaInstaller + +go 1.24 + +require ( + fyne.io/fyne/v2 v2.6.0 + github.com/pkg/sftp v1.13.9 + golang.org/x/crypto v0.37.0 +) + +require ( + fyne.io/systray v1.11.0 // indirect + github.com/BurntSushi/toml v1.5.0 // indirect + github.com/davecgh/go-spew v1.1.1 // indirect + github.com/fredbi/uri v1.1.0 // indirect + github.com/fsnotify/fsnotify v1.9.0 // indirect + github.com/fyne-io/gl-js v0.1.0 // indirect + github.com/fyne-io/glfw-js v0.2.0 // indirect + github.com/fyne-io/image v0.1.1 // indirect + github.com/fyne-io/oksvg v0.1.0 // indirect + github.com/go-gl/gl v0.0.0-20231021071112-07e5d0ea2e71 // indirect + github.com/go-gl/glfw/v3.3/glfw v0.0.0-20250301202403-da16c1255728 // indirect + github.com/go-text/render v0.2.0 // indirect + github.com/go-text/typesetting v0.3.0 // indirect + github.com/godbus/dbus/v5 v5.1.0 // indirect + github.com/hack-pad/go-indexeddb v0.3.2 // indirect + github.com/hack-pad/safejs v0.1.1 // indirect + github.com/jeandeaual/go-locale v0.0.0-20250421151639-a9d6ed1b3d45 // indirect + github.com/jsummers/gobmp v0.0.0-20230614200233-a9de23ed2e25 // indirect + github.com/kr/fs v0.1.0 // indirect + github.com/kr/text v0.2.0 // indirect + github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646 // indirect + github.com/nicksnyder/go-i18n/v2 v2.6.0 // indirect + github.com/pmezard/go-difflib v1.0.0 // indirect + github.com/rymdport/portal v0.4.1 // indirect + github.com/srwiley/oksvg v0.0.0-20221011165216-be6e8873101c // indirect + github.com/srwiley/rasterx v0.0.0-20220730225603-2ab79fcdd4ef // indirect + github.com/stretchr/testify v1.10.0 // indirect + github.com/yuin/goldmark v1.7.10 // indirect + golang.org/x/image v0.26.0 // indirect + golang.org/x/net v0.39.0 // indirect + golang.org/x/sys v0.32.0 // indirect + golang.org/x/text v0.24.0 // indirect + gopkg.in/yaml.v3 v3.0.1 // indirect +) diff --git a/go.sum b/go.sum new file mode 100644 index 0000000..69a3cc8 --- /dev/null +++ b/go.sum @@ -0,0 +1,158 @@ +fyne.io/fyne/v2 v2.6.0 h1:Rywo9yKYN4qvNuvkRuLF+zxhJYWbIFM+m4N4KV4p1pQ= +fyne.io/fyne/v2 v2.6.0/go.mod h1:YZt7SksjvrSNJCwbWFV32WON3mE1Sr7L41D29qMZ/lU= +fyne.io/systray v1.11.0 h1:D9HISlxSkx+jHSniMBR6fCFOUjk1x/OOOJLa9lJYAKg= +fyne.io/systray v1.11.0/go.mod h1:RVwqP9nYMo7h5zViCBHri2FgjXF7H2cub7MAq4NSoLs= +github.com/BurntSushi/toml v1.5.0 h1:W5quZX/G/csjUnuI8SUYlsHs9M38FC7znL0lIO+DvMg= +github.com/BurntSushi/toml v1.5.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho= +github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/felixge/fgprof v0.9.3 h1:VvyZxILNuCiUCSXtPtYmmtGvb65nqXh2QFWc0Wpf2/g= +github.com/felixge/fgprof v0.9.3/go.mod h1:RdbpDgzqYVh/T9fPELJyV7EYJuHB55UTEULNun8eiPw= +github.com/fredbi/uri v1.1.0 h1:OqLpTXtyRg9ABReqvDGdJPqZUxs8cyBDOMXBbskCaB8= +github.com/fredbi/uri v1.1.0/go.mod h1:aYTUoAXBOq7BLfVJ8GnKmfcuURosB1xyHDIfWeC/iW4= +github.com/fsnotify/fsnotify v1.9.0 h1:2Ml+OJNzbYCTzsxtv8vKSFD9PbJjmhYF14k/jKC7S9k= +github.com/fsnotify/fsnotify v1.9.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0= +github.com/fyne-io/gl-js v0.1.0 h1:8luJzNs0ntEAJo+8x8kfUOXujUlP8gB3QMOxO2mUdpM= +github.com/fyne-io/gl-js v0.1.0/go.mod h1:ZcepK8vmOYLu96JoxbCKJy2ybr+g1pTnaBDdl7c3ajI= +github.com/fyne-io/glfw-js v0.2.0 h1:8GUZtN2aCoTPNqgRDxK5+kn9OURINhBEBc7M4O1KrmM= +github.com/fyne-io/glfw-js v0.2.0/go.mod h1:Ri6te7rdZtBgBpxLW19uBpp3Dl6K9K/bRaYdJ22G8Jk= +github.com/fyne-io/image v0.1.1 h1:WH0z4H7qfvNUw5l4p3bC1q70sa5+YWVt6HCj7y4VNyA= +github.com/fyne-io/image v0.1.1/go.mod h1:xrfYBh6yspc+KjkgdZU/ifUC9sPA5Iv7WYUBzQKK7JM= +github.com/fyne-io/oksvg v0.1.0 h1:7EUKk3HV3Y2E+qypp3nWqMXD7mum0hCw2KEGhI1fnBw= +github.com/fyne-io/oksvg v0.1.0/go.mod h1:dJ9oEkPiWhnTFNCmRgEze+YNprJF7YRbpjgpWS4kzoI= +github.com/go-gl/gl v0.0.0-20231021071112-07e5d0ea2e71 h1:5BVwOaUSBTlVZowGO6VZGw2H/zl9nrd3eCZfYV+NfQA= +github.com/go-gl/gl v0.0.0-20231021071112-07e5d0ea2e71/go.mod h1:9YTyiznxEY1fVinfM7RvRcjRHbw2xLBJ3AAGIT0I4Nw= +github.com/go-gl/glfw/v3.3/glfw v0.0.0-20250301202403-da16c1255728 h1:RkGhqHxEVAvPM0/R+8g7XRwQnHatO0KAuVcwHo8q9W8= +github.com/go-gl/glfw/v3.3/glfw v0.0.0-20250301202403-da16c1255728/go.mod h1:SyRD8YfuKk+ZXlDqYiqe1qMSqjNgtHzBTG810KUagMc= +github.com/go-text/render v0.2.0 h1:LBYoTmp5jYiJ4NPqDc2pz17MLmA3wHw1dZSVGcOdeAc= +github.com/go-text/render v0.2.0/go.mod h1:CkiqfukRGKJA5vZZISkjSYrcdtgKQWRa2HIzvwNN5SU= +github.com/go-text/typesetting v0.3.0 h1:OWCgYpp8njoxSRpwrdd1bQOxdjOXDj9Rqart9ML4iF4= +github.com/go-text/typesetting v0.3.0/go.mod h1:qjZLkhRgOEYMhU9eHBr3AR4sfnGJvOXNLt8yRAySFuY= +github.com/go-text/typesetting-utils v0.0.0-20241103174707-87a29e9e6066 h1:qCuYC+94v2xrb1PoS4NIDe7DGYtLnU2wWiQe9a1B1c0= +github.com/go-text/typesetting-utils v0.0.0-20241103174707-87a29e9e6066/go.mod h1:DDxDdQEnB70R8owOx3LVpEFvpMK9eeH1o2r0yZhFI9o= +github.com/godbus/dbus/v5 v5.1.0 h1:4KLkAxT3aOY8Li4FRJe/KvhoNFFxo0m6fNuFUO8QJUk= +github.com/godbus/dbus/v5 v5.1.0/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= +github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/pprof v0.0.0-20211214055906-6f57359322fd h1:1FjCyPC+syAzJ5/2S8fqdZK1R22vvA0J7JZKcuOIQ7Y= +github.com/google/pprof v0.0.0-20211214055906-6f57359322fd/go.mod h1:KgnwoLYCZ8IQu3XUZ8Nc/bM9CCZFOyjUNOSygVozoDg= +github.com/hack-pad/go-indexeddb v0.3.2 h1:DTqeJJYc1usa45Q5r52t01KhvlSN02+Oq+tQbSBI91A= +github.com/hack-pad/go-indexeddb v0.3.2/go.mod h1:QvfTevpDVlkfomY498LhstjwbPW6QC4VC/lxYb0Kom0= +github.com/hack-pad/safejs v0.1.1 h1:d5qPO0iQ7h2oVtpzGnLExE+Wn9AtytxIfltcS2b9KD8= +github.com/hack-pad/safejs v0.1.1/go.mod h1:HdS+bKF1NrE72VoXZeWzxFOVQVUSqZJAG0xNCnb+Tio= +github.com/jeandeaual/go-locale v0.0.0-20250421151639-a9d6ed1b3d45 h1:vFdvrlsVU+p/KFBWTq0lTG4fvWvG88sawGlCzM+RUEU= +github.com/jeandeaual/go-locale v0.0.0-20250421151639-a9d6ed1b3d45/go.mod h1:ZDXo8KHryOWSIqnsb/CiDq7hQUYryCgdVnxbj8tDG7o= +github.com/jsummers/gobmp v0.0.0-20230614200233-a9de23ed2e25 h1:YLvr1eE6cdCqjOe972w/cYF+FjW34v27+9Vo5106B4M= +github.com/jsummers/gobmp v0.0.0-20230614200233-a9de23ed2e25/go.mod h1:kLgvv7o6UM+0QSf0QjAse3wReFDsb9qbZJdfexWlrQw= +github.com/kr/fs v0.1.0 h1:Jskdu9ieNAYnjxsi0LbQp1ulIKZV1LAFgK1tWhpZgl8= +github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg= +github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= +github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= +github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646 h1:zYyBkD/k9seD2A7fsi6Oo2LfFZAehjjQMERAvZLEDnQ= +github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646/go.mod h1:jpp1/29i3P1S/RLdc7JQKbRpFeM1dOBd8T9ki5s+AY8= +github.com/nicksnyder/go-i18n/v2 v2.6.0 h1:C/m2NNWNiTB6SK4Ao8df5EWm3JETSTIGNXBpMJTxzxQ= +github.com/nicksnyder/go-i18n/v2 v2.6.0/go.mod h1:88sRqr0C6OPyJn0/KRNaEz1uWorjxIKP7rUUcvycecE= +github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs= +github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= +github.com/pkg/profile v1.7.0 h1:hnbDkaNWPCLMO9wGLdBFTIZvzDrDfBM2072E1S9gJkA= +github.com/pkg/profile v1.7.0/go.mod h1:8Uer0jas47ZQMJ7VD+OHknK4YDY07LPUC6dEvqDjvNo= +github.com/pkg/sftp v1.13.9 h1:4NGkvGudBL7GteO3m6qnaQ4pC0Kvf0onSVc9gR3EWBw= +github.com/pkg/sftp v1.13.9/go.mod h1:OBN7bVXdstkFFN/gdnHPUb5TE8eb8G1Rp9wCItqjkkA= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/rymdport/portal v0.4.1 h1:2dnZhjf5uEaeDjeF/yBIeeRo6pNI2QAKm7kq1w/kbnA= +github.com/rymdport/portal v0.4.1/go.mod h1:kFF4jslnJ8pD5uCi17brj/ODlfIidOxlgUDTO5ncnC4= +github.com/srwiley/oksvg v0.0.0-20221011165216-be6e8873101c h1:km8GpoQut05eY3GiYWEedbTT0qnSxrCjsVbb7yKY1KE= +github.com/srwiley/oksvg v0.0.0-20221011165216-be6e8873101c/go.mod h1:cNQ3dwVJtS5Hmnjxy6AgTPd0Inb3pW05ftPSX7NZO7Q= +github.com/srwiley/rasterx v0.0.0-20220730225603-2ab79fcdd4ef h1:Ch6Q+AZUxDBCVqdkI8FSpFyZDtCVBc2VmejdNrm5rRQ= +github.com/srwiley/rasterx v0.0.0-20220730225603-2ab79fcdd4ef/go.mod h1:nXTWP6+gD5+LUJ8krVhhoeHjvHTutPxMYl5SvkcnJNE= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= +github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= +github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= +github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= +github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= +github.com/yuin/goldmark v1.7.10 h1:S+LrtBjRmqMac2UdtB6yyCEJm+UILZ2fefI4p7o0QpI= +github.com/yuin/goldmark v1.7.10/go.mod h1:ip/1k0VRfGynBgxOz0yCqHrbZXhcjxyuS66Brc7iBKg= +golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= +golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= +golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliYc= +golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= +golang.org/x/crypto v0.23.0/go.mod h1:CKFgDieR+mRhux2Lsu27y0fO304Db0wZe70UKqHu0v8= +golang.org/x/crypto v0.31.0/go.mod h1:kDsLvtWBEx7MV9tJOj9bnXsPbxwJQ6csT/x4KIN4Ssk= +golang.org/x/crypto v0.37.0 h1:kJNSjF/Xp7kU0iB2Z+9viTPMW4EqqsrywMXLJOOsXSE= +golang.org/x/crypto v0.37.0/go.mod h1:vg+k43peMZ0pUMhYmVAWysMK35e6ioLh3wB8ZCAfbVc= +golang.org/x/image v0.26.0 h1:4XjIFEZWQmCZi6Wv8BoxsDhRU3RVnLX04dToTDAEPlY= +golang.org/x/image v0.26.0/go.mod h1:lcxbMFAovzpnJxzXS3nyL83K27tmqtKzIJpctK8YO5c= +golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= +golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= +golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= +golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= +golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= +golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= +golang.org/x/net v0.15.0/go.mod h1:idbUs1IY1+zTqbi8yxTbhexhEEk5ur9LInksu6HrEpk= +golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44= +golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM= +golang.org/x/net v0.39.0 h1:ZCu7HMWDxpXpaiKdhzIfaltL9Lp31x/3fCP11bc6/fY= +golang.org/x/net v0.39.0/go.mod h1:X7NRbYVEA+ewNkCNyJ513WmMdQ3BineSwVtN2zD/d+E= +golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y= +golang.org/x/sync v0.6.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.32.0 h1:s77OFDvIQeibCmezSnk/q6iAfkdiQaJi4VzroCFrN20= +golang.org/x/sys v0.32.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k= +golang.org/x/telemetry v0.0.0-20240228155512-f48c80bd79b2/go.mod h1:TeRTkGYfJXctD9OcfyVLyj2J3IxLnKwHJR8f4D8a3YE= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= +golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= +golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo= +golang.org/x/term v0.12.0/go.mod h1:owVbMEjm3cBLCHdkQu9b1opXd4ETQWc3BhuQGKgXgvU= +golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk= +golang.org/x/term v0.20.0/go.mod h1:8UkIAJTvZgivsXaD6/pH6U9ecQzZ45awqEOzuCvwpFY= +golang.org/x/term v0.27.0/go.mod h1:iMsnZpn0cago0GOrHO2+Y7u7JPn5AylBrcoWkElMTSM= +golang.org/x/term v0.31.0 h1:erwDkOK1Msy6offm1mOgvspSkslFnIGsFnxOKoufg3o= +golang.org/x/term v0.31.0/go.mod h1:R4BeIy7D95HzImkxGkTW1UQTtP54tio2RyHz7PwK0aw= +golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= +golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= +golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= +golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= +golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= +golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ= +golang.org/x/text v0.24.0 h1:dd5Bzh4yt5KYA8f9CJHCP4FB4D51c2c6JvN37xJJkJ0= +golang.org/x/text v0.24.0/go.mod h1:L8rBsPeo2pSS+xqN0d5u2ikmjtmoJbDBT1b7nHvFCdU= +golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= +golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= +golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58= +golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk= +golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f h1:BLraFXnmrev5lT+xlilqcH8XK9/i0At2xKjWk4p6zsU= +gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/internal/installer/installer.go b/internal/installer/installer.go new file mode 100644 index 0000000..be1c542 --- /dev/null +++ b/internal/installer/installer.go @@ -0,0 +1,96 @@ +package installer + +import ( + "fmt" + "os" + + "gitea.unprism.ru/KRBL/FemaInstaller/internal/ssh" + "gitea.unprism.ru/KRBL/FemaInstaller/pkg/config" + "gitea.unprism.ru/KRBL/FemaInstaller/pkg/fileutils" +) + +// Installer handles the installation process +type Installer struct { + DefaultSettings string +} + +// NewInstaller creates a new installer with the provided default settings +func NewInstaller(defaultSettings string) *Installer { + return &Installer{ + DefaultSettings: defaultSettings, + } +} + +// Install performs the installation process +func (i *Installer) Install(sshConfig *config.SSHConfig) error { + // Validate serial number + if len([]rune(sshConfig.Serial)) != 16 { + return fmt.Errorf("serial number must be 16 characters") + } + + // Update settings with user configuration + updatedSettings, err := config.UpdateSettingsJSON(i.DefaultSettings, sshConfig) + if err != nil { + return fmt.Errorf("failed to update settings: %w", err) + } + + // Save updated settings to file + err = config.SaveSettingsJSON(updatedSettings, "settings.json") + if err != nil { + return fmt.Errorf("failed to save settings: %w", err) + } + + // Create SSH client configuration + clientConfig := ssh.NewClientConfig( + sshConfig.IP, + sshConfig.Port, + sshConfig.Login, + sshConfig.Password, + ) + + // Connect to SSH server + sshClient, err := ssh.CreateSSHClient(clientConfig) + if err != nil { + return fmt.Errorf("SSH connection failed: %w", err) + } + defer sshClient.Close() + + // Create SFTP client + sftpClient, err := ssh.CreateSFTPClient(clientConfig) + if err != nil { + return fmt.Errorf("SFTP connection failed: %w", err) + } + defer sftpClient.Close() + + // Upload archive + remotePath := "/root/dict.tar" + if err = fileutils.UploadFile(sftpClient, sshConfig.ArchivePath, remotePath); err != nil { + return fmt.Errorf("file upload failed: %w", err) + } + + // Upload settings + settingsPath := "/root/settings.json" + if err = fileutils.UploadFile(sftpClient, "settings.json", settingsPath); err != nil { + return fmt.Errorf("settings upload failed: %w", err) + } + + // Execute installation commands + commands := []string{ + "tar -xf /root/dict.tar -C /root/", + "mkdir -p /root/fema/storage", + "mv -f ~/settings.json /root/fema/storage", + "chmod +x /root/dict/*", + fmt.Sprintf("sudo /root/dict/install.sh -s %s", sshConfig.Serial), + } + + for _, cmd := range commands { + if err := ssh.ExecuteCommand(sshClient, cmd); err != nil { + return fmt.Errorf("command execution failed: %w", err) + } + } + + // Clean up temporary files + os.Remove("settings.json") + + return nil +} diff --git a/internal/ssh/client.go b/internal/ssh/client.go new file mode 100644 index 0000000..f8a4eb7 --- /dev/null +++ b/internal/ssh/client.go @@ -0,0 +1,89 @@ +package ssh + +import ( + "fmt" + "time" + + "github.com/pkg/sftp" + "golang.org/x/crypto/ssh" +) + +// ClientConfig holds the configuration for SSH connections +type ClientConfig struct { + Host string + Port string + Username string + Password string + Timeout time.Duration +} + +// NewClientConfig creates a new SSH client configuration +func NewClientConfig(host, port, username, password string) *ClientConfig { + return &ClientConfig{ + Host: host, + Port: port, + Username: username, + Password: password, + Timeout: 30 * time.Second, + } +} + +// CreateSSHClient creates and returns an SSH client using the provided configuration +func CreateSSHClient(config *ClientConfig) (*ssh.Client, error) { + if config == nil { + return nil, fmt.Errorf("SSH config cannot be nil") + } + + sshConfig := &ssh.ClientConfig{ + User: config.Username, + Auth: []ssh.AuthMethod{ + ssh.Password(config.Password), + }, + HostKeyCallback: ssh.InsecureIgnoreHostKey(), + Timeout: config.Timeout, + } + + client, err := ssh.Dial("tcp", config.Host+":"+config.Port, sshConfig) + if err != nil { + return nil, fmt.Errorf("failed to connect to SSH server: %w", err) + } + + return client, nil +} + +// CreateSFTPClient creates and returns an SFTP client using the provided configuration +func CreateSFTPClient(config *ClientConfig) (*sftp.Client, error) { + if config == nil { + return nil, fmt.Errorf("SFTP config cannot be nil") + } + + // Create SSH client + sshClient, err := CreateSSHClient(config) + if err != nil { + return nil, err + } + + // Create SFTP client + sftpClient, err := sftp.NewClient(sshClient) + if err != nil { + sshClient.Close() // Close the SSH client in case of failure + return nil, fmt.Errorf("failed to create SFTP client: %w", err) + } + + return sftpClient, nil +} + +// ExecuteCommand executes a command on the remote server +func ExecuteCommand(client *ssh.Client, command string) error { + session, err := client.NewSession() + if err != nil { + return fmt.Errorf("session creation failed: %w", err) + } + defer session.Close() + + if err := session.Run(command); err != nil { + return fmt.Errorf("command '%s' failed: %w", command, err) + } + + return nil +} diff --git a/internal/ui/file_selector.go b/internal/ui/file_selector.go new file mode 100644 index 0000000..b56df73 --- /dev/null +++ b/internal/ui/file_selector.go @@ -0,0 +1,49 @@ +package ui + +import ( + "path/filepath" + + "fyne.io/fyne/v2" + "fyne.io/fyne/v2/container" + "fyne.io/fyne/v2/dialog" + "fyne.io/fyne/v2/widget" +) + +// CustomFileSelector displays a custom file selection dialog +func CustomFileSelector(window fyne.Window, setText func(string)) { + // Get list of files in current directory + files, _ := filepath.Glob("*") + + // Create list widget with files + fileList := widget.NewList( + func() int { + return len(files) + }, + func() fyne.CanvasObject { + return widget.NewLabel("File") + }, + func(id widget.ListItemID, obj fyne.CanvasObject) { + obj.(*widget.Label).SetText(files[id]) + }, + ) + + // Set selection handler + fileList.OnSelected = func(id widget.ListItemID) { + setText(files[id]) // Set the selected path in the text field + } + + // Create dialog title + title := widget.NewLabel("Files in current directory:") + title.Alignment = fyne.TextAlignCenter + + // Create layout with title and file list + content := container.NewBorder( + title, nil, nil, nil, // Title at the top + container.NewMax(fileList), // List takes maximum space + ) + + // Create and show dialog + fileDialog := dialog.NewCustom("Select a file", "Close", content, window) + fileDialog.Resize(fyne.NewSize(400, 500)) // Set dialog size + fileDialog.Show() +} \ No newline at end of file diff --git a/internal/ui/main_window.go b/internal/ui/main_window.go new file mode 100644 index 0000000..a2074ce --- /dev/null +++ b/internal/ui/main_window.go @@ -0,0 +1,120 @@ +package ui + +import ( + "fyne.io/fyne/v2" + "fyne.io/fyne/v2/container" + "fyne.io/fyne/v2/dialog" + "fyne.io/fyne/v2/widget" + + "gitea.unprism.ru/KRBL/FemaInstaller/pkg/config" +) + +// MainWindow represents the main application window +type MainWindow struct { + Window fyne.Window + IPEntry *widget.Entry + PortEntry *widget.Entry + LoginEntry *widget.Entry + PasswordEntry *widget.Entry + SerialEntry *widget.Entry + TailNumberEntry *widget.Entry + DefaultHostEntry *widget.Entry + ArchivePathEntry *widget.Entry + StatusLabel *widget.Label + InstallButton *widget.Button +} + +// NewMainWindow creates a new main window for the application +func NewMainWindow(app fyne.App, installHandler func(*config.SSHConfig) error) *MainWindow { + window := app.NewWindow("Fema Installer") + + // Create form fields + mainWindow := &MainWindow{ + Window: window, + IPEntry: widget.NewEntry(), + PortEntry: widget.NewEntry(), + LoginEntry: widget.NewEntry(), + PasswordEntry: widget.NewPasswordEntry(), + SerialEntry: widget.NewEntry(), + TailNumberEntry: widget.NewEntry(), + DefaultHostEntry: widget.NewEntry(), + ArchivePathEntry: widget.NewEntry(), + StatusLabel: widget.NewLabel(""), + } + + // Disable archive path entry (will be set by file selector) + mainWindow.ArchivePathEntry.Disable() + + // Create archive selection button + selectArchiveBtn := widget.NewButton("Select Archive", func() { + CustomFileSelector(window, func(path string) { + mainWindow.ArchivePathEntry.SetText(path) + }) + }) + + // Create install button + mainWindow.InstallButton = widget.NewButton("Install", func() { + config := &config.SSHConfig{ + IP: mainWindow.IPEntry.Text, + Port: mainWindow.PortEntry.Text, + Login: mainWindow.LoginEntry.Text, + Password: mainWindow.PasswordEntry.Text, + Serial: mainWindow.SerialEntry.Text, + TailNumber: mainWindow.TailNumberEntry.Text, + DefaultHost: mainWindow.DefaultHostEntry.Text, + ArchivePath: mainWindow.ArchivePathEntry.Text, + } + + mainWindow.StatusLabel.SetText("Starting installation...") + go func() { + // Validate serial number + if len([]rune(config.Serial)) != 16 { + mainWindow.StatusLabel.SetText("Serial number must be 16 characters") + dialog.ShowInformation("Error", "Serial number must be 16 characters", window) + return + } + + // Perform installation + err := installHandler(config) + if err != nil { + dialog.ShowError(err, window) + mainWindow.StatusLabel.SetText("Installation failed") + } else { + mainWindow.StatusLabel.SetText("Installation completed successfully!") + dialog.ShowInformation("Success", "Installation completed successfully!", window) + } + }() + }) + + // Create form layout + form := container.NewVBox( + widget.NewForm( + widget.NewFormItem("IP", mainWindow.IPEntry), + widget.NewFormItem("Port", mainWindow.PortEntry), + widget.NewFormItem("Login", mainWindow.LoginEntry), + widget.NewFormItem("Password", mainWindow.PasswordEntry), + widget.NewFormItem("Serial Number", mainWindow.SerialEntry), + widget.NewFormItem("Tail Number", mainWindow.TailNumberEntry), + widget.NewFormItem("Default Server", mainWindow.DefaultHostEntry), + widget.NewFormItem("Archive", container.NewHBox(mainWindow.ArchivePathEntry, selectArchiveBtn)), + ), + mainWindow.InstallButton, + mainWindow.StatusLabel, + ) + + // Set window content and size + window.SetContent(form) + window.Resize(fyne.NewSize(400, 300)) + + return mainWindow +} + +// Show displays the main window +func (w *MainWindow) Show() { + w.Window.Show() +} + +// ShowAndRun displays the main window and starts the application +func (w *MainWindow) ShowAndRun() { + w.Window.ShowAndRun() +} diff --git a/internal/ui/updater_window.go b/internal/ui/updater_window.go new file mode 100644 index 0000000..f15efc1 --- /dev/null +++ b/internal/ui/updater_window.go @@ -0,0 +1,81 @@ +package ui + +import ( + "fyne.io/fyne/v2" + "fyne.io/fyne/v2/container" + "fyne.io/fyne/v2/widget" + + "gitea.unprism.ru/KRBL/FemaInstaller/pkg/config" +) + +// UpdaterWindow represents the main window for the updater application +type UpdaterWindow struct { + Window fyne.Window + ConfigDisplay *widget.Label + UpdateButton *widget.Button + StatusLabel *widget.Label +} + +// NewUpdaterWindow creates a new window for the updater application +func NewUpdaterWindow(app fyne.App, config *config.UpdaterConfig, updateHandler func() error) *UpdaterWindow { + window := app.NewWindow("Обновление ПО Фема") + + // Create updater window + updaterWindow := &UpdaterWindow{ + Window: window, + ConfigDisplay: widget.NewLabel(config.String()), + StatusLabel: widget.NewLabel(""), + } + + // Create update button + updaterWindow.UpdateButton = widget.NewButton("Обновить ПО", func() { + updaterWindow.StatusLabel.SetText("Начало обновления...") + updaterWindow.UpdateButton.Disable() + + go func() { + err := updateHandler() + if err != nil { + updaterWindow.StatusLabel.SetText("Ошибка обновления: " + err.Error()) + } else { + updaterWindow.StatusLabel.SetText("Обновление успешно завершено!") + } + updaterWindow.UpdateButton.Enable() + }() + }) + + // Create title + title := widget.NewLabel("Программа обновления ПО Фема") + title.Alignment = fyne.TextAlignCenter + title.TextStyle = fyne.TextStyle{Bold: true} + + // Create config section title + configTitle := widget.NewLabel("Текущая конфигурация:") + configTitle.TextStyle = fyne.TextStyle{Bold: true} + + // Create layout + content := container.NewVBox( + title, + widget.NewSeparator(), + configTitle, + updaterWindow.ConfigDisplay, + widget.NewSeparator(), + updaterWindow.UpdateButton, + updaterWindow.StatusLabel, + ) + + // Set window content and size + window.SetContent(content) + window.Resize(fyne.NewSize(400, 300)) + + return updaterWindow +} + +// Show displays the updater window +func (w *UpdaterWindow) Show() { + w.Window.Show() +} + +// ShowAndRun displays the updater window and starts the application +func (w *UpdaterWindow) ShowAndRun() { + w.Window.ShowAndRun() +} diff --git a/internal/updater/updater.go b/internal/updater/updater.go new file mode 100644 index 0000000..c23ef59 --- /dev/null +++ b/internal/updater/updater.go @@ -0,0 +1,89 @@ +package updater + +import ( + "fmt" + "os" + "path/filepath" + + "gitea.unprism.ru/KRBL/FemaInstaller/internal/ssh" + "gitea.unprism.ru/KRBL/FemaInstaller/pkg/config" + "gitea.unprism.ru/KRBL/FemaInstaller/pkg/fileutils" +) + +// Updater handles the software update process +type Updater struct { + Config *config.UpdaterConfig + BinaryData []byte +} + +// NewUpdater creates a new updater with the provided configuration and binary data +func NewUpdater(config *config.UpdaterConfig, binaryData []byte) *Updater { + return &Updater{ + Config: config, + BinaryData: binaryData, + } +} + +// Update performs the software update process +func (u *Updater) Update() error { + // Save binary to temporary file + tempFile := "update_binary" + if err := os.WriteFile(tempFile, u.BinaryData, 0644); err != nil { + return fmt.Errorf("не удалось сохранить временный файл: %w", err) + } + defer os.Remove(tempFile) // Clean up temporary file + + // Create SSH client configuration + clientConfig := ssh.NewClientConfig( + u.Config.IP, + u.Config.Port, + u.Config.Login, + u.Config.Password, + ) + + // Connect to SSH server + sshClient, err := ssh.CreateSSHClient(clientConfig) + if err != nil { + return fmt.Errorf("ошибка подключения SSH: %w", err) + } + defer sshClient.Close() + + // Create SFTP client + sftpClient, err := ssh.CreateSFTPClient(clientConfig) + if err != nil { + return fmt.Errorf("ошибка подключения SFTP: %w", err) + } + defer sftpClient.Close() + + // Upload binary + remotePath := "/root/fema/build.new" + if err = fileutils.UploadFile(sftpClient, tempFile, remotePath); err != nil { + return fmt.Errorf("ошибка загрузки файла: %w", err) + } + + // Execute update commands + commands := []string{ + "mv -f /root/fema/build.new /root/fema/build", + "chmod +x /root/fema/build", + "systemctl restart fema.service", + } + + for _, cmd := range commands { + if err := ssh.ExecuteCommand(sshClient, cmd); err != nil { + return fmt.Errorf("ошибка выполнения команды '%s': %w", cmd, err) + } + } + + return nil +} + +// GetConfigFilePath returns the path to the configuration file +func GetConfigFilePath() string { + // Get executable directory + execDir, err := filepath.Abs(filepath.Dir(os.Args[0])) + if err != nil { + execDir = "." + } + + return filepath.Join(execDir, "updater_config.json") +} diff --git a/pkg/config/config.go b/pkg/config/config.go new file mode 100644 index 0000000..e2f645f --- /dev/null +++ b/pkg/config/config.go @@ -0,0 +1,61 @@ +package config + +import ( + "fmt" + "os" + "strings" +) + +// Config represents the application configuration +type Config struct { + DefaultSettings string +} + +// SSHConfig holds SSH connection and installation parameters +type SSHConfig struct { + IP string + Port string + Login string + Password string + Serial string + TailNumber string + DefaultHost string + ArchivePath string +} + +// NewSSHConfig creates a new SSH configuration with the provided parameters +func NewSSHConfig(ip, port, login, password, serial, tailNumber, defaultHost, archivePath string) *SSHConfig { + return &SSHConfig{ + IP: ip, + Port: port, + Login: login, + Password: password, + Serial: serial, + TailNumber: tailNumber, + DefaultHost: defaultHost, + ArchivePath: archivePath, + } +} + +// UpdateSettingsJSON updates the default settings JSON with user-provided values +func UpdateSettingsJSON(defaultSettings string, config *SSHConfig) (string, error) { + // Replace registration number + updated := strings.Replace(defaultSettings, `"REG_NUMBER" : "",`, fmt.Sprintf(`"REG_NUMBER" : "%s",`, config.TailNumber), 1) + + // Split the default host into domain and port + hostParts := strings.Split(config.DefaultHost, ":") + if len(hostParts) != 2 { + return "", fmt.Errorf("invalid default host format, expected domain:port") + } + + // Replace domain and port + updated = strings.Replace(updated, `"DOMAIN" : "",`, fmt.Sprintf(`"DOMAIN" : "%s",`, hostParts[0]), 1) + updated = strings.Replace(updated, `"PORT" : 0`, fmt.Sprintf(`"PORT" : %s`, hostParts[1]), 1) + + return updated, nil +} + +// SaveSettingsJSON saves the updated settings JSON to a file +func SaveSettingsJSON(content string, filePath string) error { + return os.WriteFile(filePath, []byte(content), 0644) +} diff --git a/pkg/config/updater_config.go b/pkg/config/updater_config.go new file mode 100644 index 0000000..cfea5be --- /dev/null +++ b/pkg/config/updater_config.go @@ -0,0 +1,73 @@ +package config + +import ( + "encoding/json" + "fmt" + "os" +) + +// UpdaterConfig holds the configuration for the updater application +type UpdaterConfig struct { + IP string `json:"ip"` + Port string `json:"port"` + Login string `json:"login"` + Password string `json:"password"` +} + +// NewUpdaterConfig creates a new updater configuration with default values +func NewUpdaterConfig() *UpdaterConfig { + return &UpdaterConfig{ + IP: "127.0.0.1", + Port: "22", + Login: "root", + Password: "", + } +} + +// LoadUpdaterConfig loads the updater configuration from a file +func LoadUpdaterConfig(filePath string) (*UpdaterConfig, error) { + // Check if file exists + if _, err := os.Stat(filePath); os.IsNotExist(err) { + // Create default config if file doesn't exist + config := NewUpdaterConfig() + if err := SaveUpdaterConfig(config, filePath); err != nil { + return nil, fmt.Errorf("не удалось создать конфигурационный файл: %w", err) + } + return config, nil + } + + // Read file + data, err := os.ReadFile(filePath) + if err != nil { + return nil, fmt.Errorf("не удалось прочитать конфигурационный файл: %w", err) + } + + // Parse JSON + var config UpdaterConfig + if err := json.Unmarshal(data, &config); err != nil { + return nil, fmt.Errorf("не удалось разобрать конфигурационный файл: %w", err) + } + + return &config, nil +} + +// SaveUpdaterConfig saves the updater configuration to a file +func SaveUpdaterConfig(config *UpdaterConfig, filePath string) error { + // Marshal JSON + data, err := json.MarshalIndent(config, "", " ") + if err != nil { + return fmt.Errorf("не удалось сериализовать конфигурацию: %w", err) + } + + // Write file + if err := os.WriteFile(filePath, data, 0644); err != nil { + return fmt.Errorf("не удалось записать конфигурационный файл: %w", err) + } + + return nil +} + +// String returns a string representation of the updater configuration +func (c *UpdaterConfig) String() string { + return fmt.Sprintf("IP: %s\nПорт: %s\nЛогин: %s\nПароль: %s", c.IP, c.Port, c.Login, c.Password) +} \ No newline at end of file diff --git a/pkg/fileutils/fileutils.go b/pkg/fileutils/fileutils.go new file mode 100644 index 0000000..8602deb --- /dev/null +++ b/pkg/fileutils/fileutils.go @@ -0,0 +1,33 @@ +package fileutils + +import ( + "fmt" + "io" + "os" + + "github.com/pkg/sftp" +) + +// UploadFile uploads a local file to a remote server using SFTP +func UploadFile(client *sftp.Client, localPath, remotePath string) error { + // Open the local file + localFile, err := os.Open(localPath) + if err != nil { + return fmt.Errorf("failed to open local file: %w", err) + } + defer localFile.Close() + + // Create the remote file + remoteFile, err := client.Create(remotePath) + if err != nil { + return fmt.Errorf("failed to create remote file: %w", err) + } + defer remoteFile.Close() + + // Copy from the local file to the remote file + if _, err = io.Copy(remoteFile, localFile); err != nil { + return fmt.Errorf("failed to upload file: %w", err) + } + + return nil +} \ No newline at end of file