Исходный код вики Отправка событий по входящим подпискам
Последние авторы
| author | version | line-number | content |
|---|---|---|---|
| 1 | Вкладка **Платформа НЕЙРОСС** раздела **Дополнительные настройки** позволяет настроить разрешение на отправку событий Платформы НЕЙРОСС / ДеВизор «внешним» системам по входящей ONVIF-подписке. Можно отправлять все события системы, так и фильтровать события по теме (топику) и содержимому. | ||
| 2 | |||
| 3 | {{info}} | ||
| 4 | **Переход к функционалу**: [[doc:ui.Рабочий стол НЕЙРОСС.WebHome]] > [[doc:ui.Параметры узла.WebHome]] > [[doc:ui.Параметры узла.Дополнительные настройки.WebHome]] > Вкладка Платформа НЕЙРОСС ~[[[doc:ui.Рабочий стол НЕЙРОСС.Изменения интерфейса НЕЙРОСС.WebHome]]]. | ||
| 5 | {{/info}} | ||
| 6 | |||
| 7 | == Общие сведения == | ||
| 8 | |||
| 9 | Также узлы НЕЙРОСС выступают в качестве ONVIF-узлов и обеспечивают возможность оформления входящей подписки от «внешнего» потребителя ONVIF-событий — «внешней системы», оформляющей подписку на события узла НЕЙРОСС и обеспечивающий приём таких событий. | ||
| 10 | |||
| 11 | Узлы НЕЙРОСС серверного типа оформляют подписку по запросу, но рассылка событий начинается только после включения функции на самом узле Платформа НЕЙРОСС / ДеВизор. | ||
| 12 | |||
| 13 | До версии 20.55 подключение функции осуществляется в файле конфигурирования. При работе в данных версиях обратитесь к специалистам компании ИТРИУМ за консультацией. | ||
| 14 | |||
| 15 | С версии 20.55 параметр доступен в интерфейсе НЕЙРОСС. | ||
| 16 | |||
| 17 | После включения функции рассылки событий во внешнюю систему(ы) начинают передаваться все события (в рамках ограничений протокола). | ||
| 18 | |||
| 19 | {{warning title="ВНИМАНИЕ"}} | ||
| 20 | Рассылка событий осуществляется в режиме реального времени по факту возникновения. Если потребитель должен постоянно быть на связи и «слушать» события. Последующее вычитывание событий НЕ поддерживается. Также есть ограничения на отправку некоторых событий. Полный функционал взаимодействия по ONVIF, в том числе с вычитыванием пропущенных событий, реализовано в Плагине ВИС ~[[[Интеграция с «внешними» информационными системами (ВИС)>>doc:neyross.Настройка Платформы НЕЙРОСС.Инструменты интеграции.Интеграция с «внешними» информационными системами (ВИС).WebHome]]], при этом события передаются по HTTP POST / JSON, а не ONVIF WS-Notification. | ||
| 21 | {{/warning}} | ||
| 22 | |||
| 23 | (% class="wikigeneratedid" %) | ||
| 24 | Поддерживается фильтрация событий по топикам (типу ONVIF-события) и по содержимому. Фильтрация событий осуществляется на стороне «внешней» системы. Механизм основан на стандартном ONVIF WS-Notification Subscribe с фильтрами TopicExpression и MessageContent (XPath). | ||
| 25 | |||
| 26 | == «Включение» рассылки событий == | ||
| 27 | |||
| 28 | При необходимости передачи событий по входящим ONVIF-подпискам в блоке **Прочее **установите флаг в поле** Отправлять события по входящим подпискам**. | ||
| 29 | |||
| 30 | Нажмите на кнопку **Сохранить**. Изменения вступают в силу через 2–3 минуты, перезагрузка узла не требуется. | ||
| 31 | |||
| 32 | == Оформление подписки == | ||
| 33 | |||
| 34 | === Endpoint === | ||
| 35 | |||
| 36 | {{code language="none"}} | ||
| 37 | http://<IP-адрес Платформы>/soap/onvif/events | ||
| 38 | {{/code}} | ||
| 39 | |||
| 40 | === Подписка без фильтров === | ||
| 41 | |||
| 42 | (% class="wikigeneratedid" %) | ||
| 43 | Отправить SOAP Subscribe с указанием только ConsumerReference и InitialTerminationTime. На Consumer должны приходить все ONVIF-события, доступные в Платформе НЕЙРОСС по подписке. | ||
| 44 | |||
| 45 | === Подписка с фильтрацией событий === | ||
| 46 | |||
| 47 | (% class="wikigeneratedid" %) | ||
| 48 | {{{Фильтр задаётся в блоке <wsn:Filter> запроса}}} | ||
| 49 | |||
| 50 | |||
| 51 | (% class="wikigeneratedid" %) | ||
| 52 | **Фильтр по топикам** | ||
| 53 | |||
| 54 | Фильтр по топикам задается строкой с топиками, разделенными знаком "|" . фильтр работает по правилу ИЛИ — событие проходит, если topic совпадает с любым из перечисленных. | ||
| 55 | |||
| 56 | Типовые topic'и событий СКУД приведены в таблице ниже: | ||
| 57 | |||
| 58 | |=Topic|=Смысл | ||
| 59 | |((( | ||
| 60 | ter:AccessControl/AccessGranted/Credential | ||
| 61 | )))|((( | ||
| 62 | Доступ разрешён | ||
| 63 | ))) | ||
| 64 | |((( | ||
| 65 | ter:AccessControl/AccessTaken/Credential | ||
| 66 | )))|((( | ||
| 67 | Проход совершен | ||
| 68 | ))) | ||
| 69 | |((( | ||
| 70 | ter:AccessControl/AccessDenied/Credential | ||
| 71 | )))|((( | ||
| 72 | Доступ запрещён | ||
| 73 | ))) | ||
| 74 | |((( | ||
| 75 | ter:AccessControl/DoorState/Door | ||
| 76 | )))|((( | ||
| 77 | Состояние двери | ||
| 78 | ))) | ||
| 79 | |((( | ||
| 80 | ter:AccessControl/... | ||
| 81 | )))|((( | ||
| 82 | Прочие события Profile C | ||
| 83 | ))) | ||
| 84 | |||
| 85 | |||
| 86 | |||
| 87 | {{info}} | ||
| 88 | Топик события можно уточнить по XML событий в Журнале событий или через Редактор тем извещений ~[[[Система получает неизвестные события. Как их интерпретировать?>>doc:neyross.Обслуживание Платформы НЕЙРОСС.Часто задаваемые вопросы | Платформа НЕЙРОСС.Система получает неизвестные события\. Как их интерпретировать?.WebHome]]]. | ||
| 89 | {{/info}} | ||
| 90 | |||
| 91 | |||
| 92 | Пример подписки с фильтрацией по топикам: | ||
| 93 | |||
| 94 | {{code}} | ||
| 95 | <wsn:Filter> | ||
| 96 | <wsn:TopicExpression Dialect="http://www.onvif.org/ver10/tev/topicExpression/ConcreteSet"> | ||
| 97 | ter:AccessControl/AccessGranted/Credential|ter:AccessControl/AccessTaken/Credential | ||
| 98 | </wsn:TopicExpression> | ||
| 99 | </wsn:Filter> | ||
| 100 | |||
| 101 | {{/code}} | ||
| 102 | |||
| 103 | |||
| 104 | **Фильтр по содержимому ** |