Версия 3.1 от admin на 2026/07/24 16:12

Скрыть последних авторов
admin 1.2 1 Вкладка **Платформа НЕЙРОСС** раздела **Дополнительные настройки** позволяет настроить разрешение на отправку событий Платформы НЕЙРОСС / ДеВизор «внешним» системам по входящей ONVIF-подписке. Можно отправлять все события системы, так и фильтровать события по теме (топику) и содержимому.
admin 1.1 2
3 {{info}}
4 **Переход к функционалу**: [[doc:ui.Рабочий стол НЕЙРОСС.WebHome]] > [[doc:ui.Параметры узла.WebHome]] > [[doc:ui.Параметры узла.Дополнительные настройки.WebHome]] > Вкладка Платформа НЕЙРОСС ~[[[doc:ui.Рабочий стол НЕЙРОСС.Изменения интерфейса НЕЙРОСС.WebHome]]].
5 {{/info}}
6
admin 1.2 7 == Общие сведения ==
admin 1.1 8
admin 2.3 9 Узлы НЕЙРОСС выступают в качестве ONVIF-узлов и обеспечивают возможность оформления входящих и исходящих подписок на события ~[[[Управление подписками>>doc:ui.Сеть.Управление подписками.WebHome]]] В частности, узлы НЕЙРОСС обеспечивают возможность оформления входящей подписки от «внешнего» потребителя ONVIF-событий — «внешней системы», оформляющей подписку на события узла НЕЙРОСС и обеспечивающий приём таких событий.
admin 1.5 10
admin 2.3 11 Узлы НЕЙРОСС серверного типа оформляют подписку по запросу, но рассылка событий начинается только после включения функции на самом узле Платформа НЕЙРОСС / ДеВизор средствами данного раздела.
admin 1.5 12
admin 2.4 13 (% class="box infomessage" %)
14 (((
15 До версии 20.55 подключение функции осуществляется в файле конфигурирования. При работе в данных версиях обратитесь к специалистам компании ИТРИУМ за консультацией.
16
17 С версии 20.55 параметр доступен в интерфейсе НЕЙРОСС.
18 )))
19
admin 1.12 20 После включения функции рассылки событий во внешнюю систему(ы) начинают передаваться все события (в рамках ограничений протокола).
21
22 {{warning title="ВНИМАНИЕ"}}
23 Рассылка событий осуществляется в режиме реального времени по факту возникновения. Если потребитель должен постоянно быть на связи и «слушать» события. Последующее вычитывание событий НЕ поддерживается. Также есть ограничения на отправку некоторых событий. Полный функционал взаимодействия по ONVIF, в том числе с вычитыванием пропущенных событий, реализовано в Плагине ВИС ~[[[Интеграция с «внешними» информационными системами (ВИС)>>doc:neyross.Настройка Платформы НЕЙРОСС.Инструменты интеграции.Интеграция с «внешними» информационными системами (ВИС).WebHome]]], при этом события передаются по HTTP POST / JSON, а не ONVIF WS-Notification.
24 {{/warning}}
25
26 (% class="wikigeneratedid" %)
admin 1.14 27 Поддерживается фильтрация событий по топикам (типу ONVIF-события) и по содержимому. Фильтрация событий осуществляется на стороне «внешней» системы. Механизм основан на стандартном ONVIF WS-Notification Subscribe с фильтрами TopicExpression и MessageContent (XPath).
admin 1.12 28
admin 2.4 29 (% class="wikigeneratedid" %)
admin 3.1 30 Пока наличие исходящих подписок отображается только для узлов типа БОРЕЙ. В будущих версиях функция будет реализована для серверов НЕЙРОСС ~[[[Управление подписками>>doc:ui.Сеть.Управление подписками.WebHome]]].
admin 2.4 31
admin 1.6 32 == «Включение» рассылки событий ==
33
admin 1.8 34 При необходимости передачи событий по входящим ONVIF-подпискам в блоке **Прочее **установите флаг в поле** Отправлять события по входящим подпискам**.
admin 1.6 35
36 Нажмите на кнопку **Сохранить**. Изменения вступают в силу через 2–3 минуты, перезагрузка узла не требуется.
37
admin 1.9 38 == Оформление подписки ==
39
admin 1.12 40 === Endpoint ===
admin 1.9 41
42 {{code language="none"}}
43 http://<IP-адрес Платформы>/soap/onvif/events
44 {{/code}}
45
admin 1.12 46 === Подписка без фильтров ===
admin 1.9 47
admin 1.11 48 (% class="wikigeneratedid" %)
49 Отправить SOAP Subscribe с указанием только ConsumerReference и InitialTerminationTime. На Consumer должны приходить все ONVIF-события, доступные в Платформе НЕЙРОСС по подписке.
50
admin 1.15 51 === Подписка с фильтрацией событий ===
admin 1.6 52
admin 1.15 53 (% class="wikigeneratedid" %)
54 {{{Фильтр задаётся в блоке <wsn:Filter> запроса}}}
admin 1.6 55
admin 1.15 56
57 (% class="wikigeneratedid" %)
58 **Фильтр по топикам**
59
60 Фильтр по топикам задается строкой с топиками, разделенными знаком "|" . фильтр работает по правилу ИЛИ — событие проходит, если topic совпадает с любым из перечисленных.
61
62 Типовые topic'и событий СКУД приведены в таблице ниже:
63
64 |=Topic|=Смысл
65 |(((
66 ter:AccessControl/AccessGranted/Credential
67 )))|(((
admin 1.16 68 Доступ разрешён
admin 1.15 69 )))
70 |(((
71 ter:AccessControl/AccessTaken/Credential
72 )))|(((
73 Проход совершен
74 )))
75 |(((
76 ter:AccessControl/AccessDenied/Credential
77 )))|(((
78 Доступ запрещён
79 )))
80 |(((
81 ter:AccessControl/DoorState/Door
82 )))|(((
83 Состояние двери
84 )))
85 |(((
86 ter:AccessControl/...
87 )))|(((
88 Прочие события Profile C
89 )))
admin 1.16 90
91
92
93 {{info}}
admin 1.18 94 Топик события можно уточнить по XML событий в Журнале событий или через Редактор тем извещений ~[[[Система получает неизвестные события. Как их интерпретировать?>>doc:neyross.Обслуживание Платформы НЕЙРОСС.Часто задаваемые вопросы | Платформа НЕЙРОСС.Система получает неизвестные события\. Как их интерпретировать?.WebHome]]].
admin 1.16 95 {{/info}}
96
admin 1.18 97
admin 2.1 98 Пример фильтра по топикам:
admin 1.18 99
100 {{code}}
101 <wsn:Filter>
102 <wsn:TopicExpression Dialect="http://www.onvif.org/ver10/tev/topicExpression/ConcreteSet">
103 ter:AccessControl/AccessGranted/Credential|ter:AccessControl/AccessTaken/Credential
104 </wsn:TopicExpression>
105 </wsn:Filter>
106
107 {{/code}}
admin 1.19 108
109
110 **Фильтр по содержимому **
admin 2.1 111
112 Фильтр задаётся через xPath выражение, которое может включать как условия по И, так и по ИЛИ.
113
114 Пример фильтра по точкам доступа:
115
116 {{code}}
117 <wsn:Filter>
118 <wsn:MessageContent Dialect="http://www.w3.org/TR/1999/REC-xpath-19991116">
119 //o:Message/o:Source/o:SimpleItem[@Name='AccessPointToken' and
120 (@Value='123e4567-e89b-12d3-a456-426614174000' or
121 @Value='abcd1234-5678-90ab-cdef-1234567890ab')]
122 </wsn:MessageContent>
123 </wsn:Filter>
124 {{/code}}
125
126 В примере выше производится поиск в сообщении блока Source, внутри которого элемент SimpleItem, у которого Name=AccessPointToken и Value равен одному из указанных UUID точек доступа.
127
128 UUID точки доступа (token) вы можете уточнить в разделе Элементы или найти в Журнале событий событие от данной точки доступа,  XML ONVIF-извещения найти блок Source / SimpleItem с @Name='AccessPointToken' и скопировать @Value ~[[[Журнал событий>>doc:ui.Журнал событий.WebHome]]].
129
130
131 **Фильтр по топику и содержимому**
132
133 Если заданы фильтры по топикам и по содержимому, то эти фильтры работают по правилу И, то есть событие должно удовлетворять обоим условиям.
134
135 Пример фильтра:
136
137 {{code}}
138 <wsn:Filter>
139 <wsn:TopicExpression Dialect="http://www.onvif.org/ver10/tev/topicExpression/ConcreteSet">
140 ter:AccessControl/AccessGranted/Credential|ter:AccessControl/AccessTaken/Credential
141 </wsn:TopicExpression>
142 <wsn:MessageContent Dialect="http://www.w3.org/TR/1999/REC-xpath-19991116">
143 //o:Message/o:Source/o:SimpleItem[@Name='AccessPointToken' and
144 (@Value='123e4567-e89b-12d3-a456-426614174000' or
145 @Value='abcd1234-5678-90ab-cdef-1234567890ab' or
146 @Value='d3bea616-7d17-4edd-b45f-70d7cae13542')]
147 </wsn:MessageContent>
148 </wsn:Filter>
149 {{/code}}

Интерфейс НЕЙРОСС