Skip To Content

Подписаться на внешний WebSocket для получения JSON

Входной Оператор подключения Подписаться на внешний WebSocket для получения JSON может быть использован для получения и адаптации данных о событиях в формате общего JSON, транслированных с WebSocket внешнего сервера. Этот входной оператор подключения работает как клиент и должен иметь возможность подписаться на WebSocket, размещенный на сервере. Если вы ищете входной оператор подключения, который работает как сервер и позволяет клиентским приложениям подписывать и отправлять данные на вход, рассмотрите возможность использования Получать JSON на WebSocket.

Примечания по использованию

  • Используйте этот входной оператор подключения, чтобы получать данные в формате общего JSON через WebSocket, обслуживаемый внешним сервером
  • Этот входной оператор подключения работает как клиент и подписывается на размещенный WebSocket сервера для получения данных, транслируемых сервером.
  • Этот входной оператор подключения соединяет в пару входящий адаптер Generic JSON с Входящим транспортом WebSocket.
  • Адаптер интерпретирует общий JSON, отличный от объекта JSON или GeoJSON. Обратите внимание, GeoJSON и объект JSON являются разновидностями стандартного JSON; для обработки этих специальных форматов используются разные адаптеры GeoEvent Server.
  • Адаптер обработает обе одиночные записи JSON, организованные в массив.
  • Запись в универсальном файле JSON не обязательно должна содержать данные, представляющие геометрию.
  • Адаптер поддерживает возможность построения точечной геометрии из атрибутивных значений X, Y и Z.
  • Этим оператором подключения поддерживаются и протокол WebSocket (ws), и WebSocket Secure (wss).
  • Клиенты, отправляющие данные на конечную точку WebSocket, должны использовать ws://<machine_name>.<domain>:6180/path.
  • Клиенты, отправляющие данные на конечную точку WebSocket Secure, должны использовать wss://<machine_name>.<domain>:6143/path.
  • Этот входной коннектор включает Режим обучения, который может быть полезен, если необходимо разрешить входному коннектору изменять построенное им определение GeoEvent. Цель этого свойства состоит в том, чтобы временно принять те полученные данные о событиях, у которых переменная схема или структура данных. Входной коннектор будет использовать образец полученных записей данных, чтобы узнать больше о переменной структуре данных и добавить новые, ранее не наблюдаемые поля атрибутов к существующему определению GeoEvent.

    Возможность изменения определения GeoEvent "на лету" может отрицательно повлиять на проект анализа в режиме реального времени в сервисе GeoEvent. Если у входящих данных событий ожидается переменная схема, рекомендуется для создания определения GeoEvent, поддерживающего все ожидаемые варианты входящих данных, использовать режим обучения в течение как можно более короткого периода времени. Затем Режим обучения можно отключить, а автоматически созданное определение GeoEvent скопировать и адаптировать для производственного развертывания.

  • Потоковый сервис использует GeoEvent Server, размещенный WebSocket для транслирования представлений объектов JSON обработанных записей событий. С помощью этого оператора можно интерпретировать объект JSON. Более подробную информацию см. в блоге Esri Community HowTo: Subscribe to a GeoEvent Server Stream Service.

Параметры

ПараметрОписание

Имя

Описательное имя входного коннектора, используемое для ссылки в GeoEvent Manager.

WebSocket URI удаленного сервера (режим клиента)

Полная конечная точка URL, включая протокол, имя хоста или IP-адрес, порт и путь. По умолчанию это localhost. Обновите это свойство, чтобы отразить URI для WebSocket хост-сервера.

Создать определение GeoEvent

Указывает, следует ли использовать новое или существующее Определение GeoEvent для данных входящих событий. Определение GeoEvent требуется GeoEvent Server, чтобы понимать поля атрибутов и типы данных входящих событий.

  • Да – новое Определение GeoEvent будет создано на основе схемы первой полученной записи события.
  • Нет – новое Определение GeoEvent не будет создаваться. Выберите существующее Определение GeoEvent, соответствующее схеме данных входящего события.

Имя определения GeoEvent (новое)

(Условия)

Имя, которое присваивается для нового Определения GeoEvent. Если определение GeoEvent с указанным именем уже существует, будет использоваться существующее определение GeoEvent. Первая полученная запись данных будет использоваться для определения ожидаемой схемы последующих записей данных, на основе которой будет создано новое определение GeoEvent.

Это свойство показывается, когда для свойства Создать определение GeoEvent задано значение Да, и скрыто, если выбрано значение Нет

Имя определения GeoEvent (существующее)

(Условия)

Имя существующего определения GeoEvent для использования при адаптации полученных данных для создания данных событий для обработки сервисом GeoEvent.

Это свойство показывается, когда для свойства Создать определение GeoEvent задано значение Нет, и скрыто, если выбрано значение Да

Пространственная привязка по умолчанию

Известный идентификатор (WKID) пространственной привязки, используемый при построении геометрии из значений полей атрибутов, координаты которых не являются значениями широты и долготы для предполагаемой географической системы координат WGS84, или строки геометрии, не включающие пространственную привязку. Также может быть указано известное текстовое значение (WKT) или имя поля атрибута, содержащего WKID или WKT.

Имя объекта JSON

Имя элемента JSON, который может использоваться в качестве корневого узла подструктуры в пределах полученных данных JSON. Когда Имя объекта JSON используется для указания элемента JSON по имени, адаптер будет искать подструктуры, имя объекта которых соответствует указанному имени элемента. Будут рассмотрены только данные в пределах идентифицированной подструктуры. Если оставить пустым, что является значением по умолчанию, верхний объект JSON используется в качестве корня всей структуры JSON.

Ожидаемый формат данных

Шаблон, используемый для соответствия ожидаемым строковым представлениям значений даты / времени и преобразования их в значения даты Java. Формат шаблона следует нормам для класса Java SimpleDateFormat. У этого свойства нет значения по умолчанию.

GeoEvent Server предпочитает, чтобы значения даты/времени выражались в стандарте ISO 8601, но несколько строковых представлений значений даты/времени, обычно распознаваемых как значения даты, могут быть преобразованы в значения даты Java без указания Ожидаемого формата даты. В том числе:

  • "2019-12-31T23:59:59" – формат стандарта ISO 8601
  • 1577836799000 – дата Java (epoch long integer; UTC)
  • "Tue Dec 31 23:59:59 -0000 2019" – общий строковый формат веб-сервисов
  • "12/31/2019 11:59:59 PM" – общий формат, используемый в США (12 часов)
  • "12/31/2019 23:59:59" – общий формат, используемый в США (24 часа)

Если полученные значения даты/времени выражены с помощью формата, отличного от одного из пяти, показанных выше, необходимо указать Ожидаемый формат даты, чтобы GeoEvent Server знал, как следует адаптировать значения даты/времени.

Построить геометрию из полей

Указывает, должен ли входной коннектор создавать геометрию точки, используя значения координат, полученные в качестве атрибутов. По умолчанию Нет.

  • Да – значения из указанных полей атрибутов событий будут использоваться для построения геометрии точек.
  • Нет – геометрия точек не будет строиться. Предполагается, что поле атрибута содержит значение, которое может быть интерпретировано как геометрия или запись события является непространственной (не имеет геометрии).

Поле геометрии X

(Условия)

Поле атрибута в данных входящего события, содержащее координатную часть X (например, горизонталь или долготу) местоположения точки.

Это свойство показывается, когда для Построить геометрию из полей задано значение Да, и скрыто, если выбрано значение Нет

Поле геометрии Y

(Условия)

Поле атрибута в данных входящего события, содержащее координатную часть Y (например, вертикаль или широту) местоположения точки.

Это свойство показывается, когда для Построить геометрию из полей задано значение Да, и скрыто, если выбрано значение Нет

Поле геометрии Z

(Условия)

Имя поля в данных входящего события, содержащего координатную часть Z (например, глубина или высота) местоположения точки. Если оставить пустым, значение Z будет опущено и будет построена 2D геометрия точки.

Это свойство показывается, когда для Построить геометрию из полей задано значение Да, и скрыто, если выбрано значение Нет

Режим Обучение

Указывает, активен или отключен Режим обучения. Если для режима обучения установлено значение Да, входящий адаптер добавит новые поля к определению GeoEvent, которое он создал и поддерживает.

  • Да – режим обучения будет включен. Определение GeoEvent будет обновлено новыми полями из записей событий, использующих разные схемы.
  • Нет – режим обучения не будет включен. Определение GeoEvent не будет изменено.

Режим обучения может быть полезен, если необходимо разрешить входному коннектору изменять построенное им определение GeoEvent. Цель этого свойства состоит в том, чтобы временно принять те полученные данные о событиях, у которых переменная схема или структура данных. Входной коннектор будет использовать образец полученных записей данных, чтобы узнать больше о переменной структуре данных и добавить новые, ранее не наблюдаемые поля атрибутов к существующему определению GeoEvent.