Wiki source code of Профессиональный редактор фильтров
Hide last authors
| author | version | line-number | content |
|---|---|---|---|
| |
1.1 | 1 | В данном разделе приведено описание профессионального редактора фильтров событий Платформы НЕЙРОСС. |
| 2 | |||
| 3 | {{info}} | ||
| 4 | Общие сведения о фильтрации событий приведены в разделе ~[[[doc:ui.Параметры узла.События и фильтры.WebHome]]]. | ||
| 5 | {{/info}} | ||
| 6 | |||
| 7 | {{info}} | ||
| |
2.1 | 8 | **Переход к функционалу**: |
| 9 | |||
| 10 | * С версии 20.40 ~[[[doc:ui.Рабочий стол НЕЙРОСС.Изменения интерфейса НЕЙРОСС.WebHome]]]: [[doc:ui.Рабочий стол НЕЙРОСС.WebHome]] > [[doc:ui.Параметры узла.WebHome]] > [[doc:ui.Параметры узла.События и фильтры.WebHome]] > вкладка Фильтры. | ||
| 11 | * До версии 20.39 включительно: [[doc:ui.Рабочий стол НЕЙРОСС.WebHome]] > Конфигурация узлов > События и фильтры > вкладка Фильтры. | ||
| 12 | * До версии 20.22: [[doc:ui.Рабочий стол НЕЙРОСС.WebHome]] > Конфигурация узлов > Фильтры. | ||
| |
1.1 | 13 | {{/info}} |
| 14 | |||
| 15 | [[image:attach:ui.Параметры узла.WebHome@content.png||thumbnail="true" height="10"]] Содержание: | ||
| 16 | |||
| 17 | {{toc/}} | ||
| 18 | |||
| 19 | == {{id name="Профессиональныйредакторфильтров-Общиесведения"/}}Общие сведения == | ||
| 20 | |||
| 21 | Профессиональный редактор позволяет построить фильтр, включающий произвольное количество веток условий. Фильтр записывается в виде логического дерева, корнем которого выступает один из логических операторов И/ИЛИ/НЕ, далее дерево дополняется произвольным количеством логических ветвей, каждая ветвь может содержать дополнительные ветки условий И/ИЛИ/НЕ, а также конечные условия ПО МЕТКЕ / ПО ИСТОЧНИКУ / ПО ТЕМАМ / ПРОИЗВОЛЬНЫЙ СКРИПТ». | ||
| 22 | |||
| 23 | {{info}} | ||
| 24 | **ПОДСКАЗКА** | ||
| 25 | |||
| 26 | По умолчанию отображается [[doc:ui.Параметры узла.События и фильтры.Базовый редактор фильтров.WebHome]]. Для перехода в профессиональный редактор установите переключатель **Профессиональный режим** в положение [[image:attach:ui.Параметры узла.WebHome@fa-on.png||thumbnail="true" height="18"]] **Включено**. | ||
| 27 | {{/info}} | ||
| 28 | |||
| 29 | Чтобы правильно построить логическое дерево, рекомендуется предварительно сформулировать требования фильтра в виде логического выражения. Примеры приведены в таблице ниже. | ||
| 30 | |||
| |
5.1 | 31 | |=((( |
| |
1.1 | 32 | № |
| |
5.1 | 33 | )))|=((( |
| |
1.1 | 34 | Фильтр |
| |
5.1 | 35 | )))|=((( |
| |
1.1 | 36 | Логическое дерево |
| |
5.1 | 37 | )))|=((( |
| |
1.1 | 38 | Комментарий |
| 39 | ))) | ||
| |
5.1 | 40 | |((( |
| |
1.1 | 41 | 1 |
| |
5.1 | 42 | )))|((( |
| |
1.1 | 43 | #Тревога И #СКУД |
| 44 | |||
| 45 | Тревожные события доступа (все точки доступа). | ||
| |
5.1 | 46 | )))|((( |
| |
1.1 | 47 | (% class="content-wrapper" %) |
| 48 | ((( | ||
| 49 | [[image:attach:filtr_example1.png]] | ||
| 50 | ))) | ||
| |
5.1 | 51 | )))|((( |
| |
1.1 | 52 | Все тревожные события помечаются меткой #Тревога, все события точек доступа помечаются меткой #СКУД. Если «И» заменить на «ИЛИ», то фильтр пропустит все тревожные события и все события системы контроля доступа. |
| 53 | ))) | ||
| |
5.1 | 54 | |((( |
| |
1.1 | 55 | 2 |
| |
5.1 | 56 | )))|((( |
| |
1.1 | 57 | #Тревога И «ТД1» |
| 58 | |||
| 59 | Тревожные события доступа от точки доступа «ТД1». | ||
| |
5.1 | 60 | )))|((( |
| |
1.1 | 61 | (% class="content-wrapper" %) |
| 62 | ((( | ||
| 63 | [[image:attach:filtr_example2.png]] | ||
| 64 | ))) | ||
| |
5.1 | 65 | )))|((( |
| |
1.1 | 66 | Все условия должны выполняться одновременно. Фильтр пропустит только события от источника ТД1, содержащие метки тревоги. Метка #СКУД здесь лишняя, так как все события от точек доступа помечаются меткой #СКУД, а в фильтре указана конкретная точка доступа. |
| 67 | ))) | ||
| |
5.1 | 68 | |((( |
| |
1.1 | 69 | 3 |
| |
5.1 | 70 | )))|((( |
| |
1.1 | 71 | #Тревога И («ТД 12.1» ИЛИ «ТД 22.1» ИЛИ «Раздел 1»). |
| 72 | |||
| 73 | Тревожные события доступа от нескольких точек доступа или разделов сигнализации. | ||
| |
5.1 | 74 | )))|((( |
| |
1.1 | 75 | (% class="content-wrapper" %) |
| 76 | ((( | ||
| 77 | [[image:attach:filtr_example3.png]] | ||
| 78 | ))) | ||
| |
5.1 | 79 | )))|((( |
| |
1.1 | 80 | Одно событие может происходить только от одного источника. Требуется отобрать события тревоги от «ТД 12.1», или от «ТД 22,1», или от раздела «Раздел 1». В одной ветви дерева источники событий могут быть разного типа. |
| 81 | ))) | ||
| |
5.1 | 82 | |((( |
| |
1.1 | 83 | 4 |
| |
5.1 | 84 | )))|((( |
| |
1.1 | 85 | #Тревога И (НЕ «ТД 8.1») |
| 86 | |||
| 87 | Тревожные события доступа от всех точек, кроме «ТД 8.1». | ||
| |
5.1 | 88 | )))|((( |
| |
1.1 | 89 | (% class="content-wrapper" %) |
| 90 | ((( | ||
| 91 | [[image:attach:filtr_example4.png]] | ||
| 92 | ))) | ||
| |
5.1 | 93 | )))|((( |
| |
1.1 | 94 | Логический оператор НЕ может содержать только одно условие, при необходимости перечисления нескольких, для каждого добавляйте своё условие «НЕ». Ниже приведён пример. |
| 95 | ))) | ||
| |
5.1 | 96 | |((( |
| |
1.1 | 97 | 5 |
| |
5.1 | 98 | )))|((( |
| |
1.1 | 99 | #Тревога И (НЕ «ТД 8.1») И (НЕ «Доступ запрещен: по команде оператора») |
| 100 | |||
| 101 | Тревожные события доступа от всех точек доступа, кроме «ТД 8.1», кроме запрета доступа по команде оператора. | ||
| |
5.1 | 102 | )))|((( |
| |
1.1 | 103 | (% class="content-wrapper" %) |
| 104 | ((( | ||
| 105 | [[image:attach:filtr_example6.png]] | ||
| 106 | ))) | ||
| |
5.1 | 107 | )))|((( |
| |
1.1 | 108 | \\ |
| 109 | ))) | ||
| 110 | |||
| 111 | \\ | ||
| 112 | |||
| 113 | {{info}} | ||
| 114 | Если необходимо построить фильтр, пропускающий события нескольких групп условий одновременно, необходимо объединить такие группы оператором «ИЛИ». На скриншоте ниже приведён пример фильтра, который пропустит тревожные события СКУД. а также события тревоги и неисправности от всех разделов сигнализации, кроме раздела «Раздел 1». | ||
| 115 | {{/info}} | ||
| 116 | |||
| 117 | \\ | ||
| 118 | |||
| 119 | == {{id name="Профессиональныйредакторфильтров-Окнораздела"/}}Окно раздела == | ||
| 120 | |||
| |
2.1 | 121 | [[image:attach:s_filters_prof_wnd.png||width="900"]] |
| |
1.1 | 122 | |
| |
2.1 | 123 | 1. **Список фильтров**: команды переименования и удаления расположены в строке фильтра. |
| |
1.1 | 124 | 1. **Дерево условий**: условия фильтра, записанные в виде логического дерева, команды управления условиями расположены в строке условия. |
| 125 | |||
| 126 | == {{id name="Профессиональныйредакторфильтров-Созданиефильтравпрофессиональномрежиме"/}}Создание фильтра в профессиональном режиме == | ||
| 127 | |||
| 128 | {{info}} | ||
| 129 | Описание настройки фильтра дано на примере. | ||
| 130 | {{/info}} | ||
| 131 | |||
| |
4.1 | 132 | В заголовке блока [1] нажмите на кнопку [[image:attach:btn_plus_circle.png||thumbnail="true" height="17"]] **Добавить фильтр.** |
| |
1.1 | 133 | |
| |
4.1 | 134 | В отобразившемся окне введите название нового фильтра. Нажмите на кнопку **ОК**. |
| |
1.1 | 135 | |
| |
4.1 | 136 | [[image:attach:nfilters_add.png]]\\ |
| |
1.1 | 137 | |
| |
4.1 | 138 | Имя нового фильтра отобразится в списке фильтров [1]. |
| |
1.1 | 139 | |
| |
4.1 | 140 | Перейдите в профессиональный режим. Для этого переведите переключатель Профессиональный режим в положение [[image:attach:fa-on.png||thumbnail="true" height="18"]] **Включено**. |
| |
1.1 | 141 | |
| |
4.1 | 142 | Постройте логическое дерево. |
| |
1.1 | 143 | |
| |
4.1 | 144 | 1. Задайте корневое логическое условие. По умолчанию установлено ИЛИ. Если требуется изменить его на И/НЕ, нажмите на кнопку [[image:attach:btn_edit1.png||thumbnail="true" height="20"]]**Изменить условие**, расположенную в строке условия. |
| 145 | 1. В отобразившемся окне выберите из раскрывающегося списка требуемый тип условия, например, — **И**, — и нажмите на кнопку **ОК**. | ||
| |
1.1 | 146 | [[image:attach:filtr_if_chg.png||width="350"]]\\ |
| |
4.1 | 147 | 1. Добавьте к корневому условию дочернее. Для этого нажмите на кнопку [[image:attach:btn_plus_circle.png||thumbnail="true" height="17"]]**Добавить дочернее условие**, расположенную в строке корневого условия. |
| 148 | 1. В отобразившемся окне выберите из раскрывающегося списка тип дочернего условия. Например, — **По метке события**. В поле **Условие** выберите из раскрывающегося списка требуемую метку. Нажмите на кнопку **ОК**. | ||
| |
1.1 | 149 | [[image:attach:filtr_if_add.png||width="340"]] [[image:attach:filtr_if_add2.png||width="400"]]\\ |
| |
4.1 | 150 | 1. Добавьте к корневому условию И еще одно дочернее условие. Для этого нажмите на кнопку [[image:attach:btn_plus_circle.png||thumbnail="true" height="17"]]**Добавить дочернее условие**, расположенную в строке корневого условия. Выберите из раскрывающегося списка тип дочернего условия, например, — **ИЛИ**. Нажмите на кнопку **ОК**. |
| 151 | 1. Добавьте к добавленному условию **ИЛИ** конечное условие **По типу элемента** и выберите из раскрывающегося списка **ТД 12.1**. Для этого нажмите на кнопку [[image:attach:btn_plus_circle.png||thumbnail="true" height="17"]]**Добавить дочернее условие**, расположенную в строке условия **ИЛИ**. | ||
| |
1.1 | 152 | [[image:attach:filtr_if_add3.png]]\\ |
| 153 | 1. ((( | ||
| |
4.1 | 154 | В отобразившемся окне в поле **Тип условия** выберите из раскрывающегося списка требуемый тип, например, — **По источнику события**, в поле **Условие** выберите из дерева функциональных элементов требуемый элемент, например, — ТД 12.1. Нажмите на кнопку **ОК**. |
| |
1.1 | 155 | [[image:attach:filtr_if_add4.png||width="340"]]\\ |
| 156 | ))) | ||
| 157 | 1. Повторите шаги f-g для добавления других дочерних условий. | ||
| 158 | 1. При необходимости, вы можете удалить ветку дерева или все дерево, кроме корневого условия и начать процедуру построения дерева заново. Чтобы удалить ветку или конечное условие, нажмите на кнопку [[image:attach:btn_delete.png||thumbnail="true" height="16"]] **Удалить**, расположенную в строке условия. | ||
| 159 | 1. Вы можете использовать в качестве типа условия темы извещений ~[[[doc:ui.Параметры узла.События и фильтры.Базовый редактор фильтров.WebHome]] → Редактор тем извещений] или произвольный скрипт ~[[[#Пользовательский скрипт как условие фильтра>>doc:||anchor="Профессиональныйредакторфильтров-Пользовательскийскрипткакусловиефильтра"]]]. | ||
| 160 | |||
| 161 | Когда дерево условий полностью готово, нажмите на кнопку **Сохранить**, расположенную внизу страницы. | ||
| 162 | |||
| 163 | {{info}} | ||
| 164 | Переименование, редактирование и удаление фильтра в профессиональном режиме осуществляется аналогично соответствующим процедурам базового режима ~[[[doc:ui.Параметры узла.События и фильтры.Базовый редактор фильтров.WebHome]]]. | ||
| 165 | {{/info}} | ||
| 166 | |||
| 167 | == {{id name="Профессиональныйредакторфильтров-Пользовательскийскрипткакусловиефильтра"/}}Пользовательский скрипт как условие фильтра == | ||
| 168 | |||
| 169 | Для реализации произвольных условий отбора событий по нестандартным условиям предусмотрена возможность использования произвольных SCALA-скриптов в качестве условия фильтра. Причем фильтр может комбинироваться стандартными связками И/ИЛИ/НЕ с другими условиями. | ||
| 170 | |||
| 171 | [[image:attach:filtr_scrypt.png||width="900"]] | ||
| 172 | |||
| 173 | На рисунке выше приведён пример отбора событий доступа в нерабочее время (произошедших до 9 утра или после 7 вечера). События доступа отбираются по метке СКУД, время события не должно входить в интервал 09:00:00 — 19:00:00. | ||
| 174 | |||
| 175 | Чтобы использовать скрипт в качестве условия фильтра: | ||
| 176 | |||
| 177 | 1. Добавьте в фильтр условие с типом: **Произвольный скрипт**. | ||
| 178 | 1. Вставьте код скрипта в редактор. Чтобы открыть редактор в полноэкранном режиме, нажмите на кнопку [[image:attach:btn_edit1.png||thumbnail="true" height="20"]]. | ||
| 179 | 1. По окончании правки скрипта нажмите на кнопку **Применить**. | ||
| 180 | |||
| 181 | {{info}} | ||
| 182 | После завершения настройки не забудьте сохранить параметры фильтра. | ||
| 183 | {{/info}} |