Документация для версии Axxon Next 4.5.0 - 4.5.10. Документация на другие версии также доступна.

Предыдущая страница Работа со списками для распознавания  Конфигурирование макрокоманд Следующая страница

Настройку конфигурации ПК Axxon Next описывает proto-файл ConfigurationService.proto.

Используется 2 метода:

  1. ChangeConfig.
  2. ListConfig

Метод ChangeConfig

Метод ChangeConfig позволяет осуществлять создание, редактирование и удаление любых объектов системы. 

Здесь и далее любой объект и элемент системы будет называться юнитом.

Вводные данные

  1. added - массив юнитов для добавления
  2. changed - массив юнитов для изменения
  3. remove - массив юнитов для удаления.

Структура юнита

Чем является юнит определяется его полем type.

Кроме того, в юнит могут быть вложены подюниты (поле units). Например, у юнита VideoChannel.0 может быть дочерний юнит Streaming.0.

Каждый юнит имеет поле uid - это идентификатор юнита, состоящий из всех "родителей" юнита, разделенных символом "/". Например, для юнита Streaming.0 поле uid будет hosts/Node1/DeviceIpint.1/VideoChannel.0/Streaming.0.

Где

  • uid начинается с "hosts",
  • Node1 - имя ноды,
  • DeviceIpint.1 имя устройства.
  • VideoChannel.0 - первый видео канал камеры.
  • Streaming.0 - первый видеопоток канала.

Кроме того, юнит может содержать любое количество настроек - поле properties.

Выходные данные

В ответ на метод будут получены следующие данные:

  1. failed - юниты, которые не удалось добавить.
  2. added - uid успешно добавленного юнита.

Метод ListConfig

Метод позволяет получить список юнитов.

Вводные данные

unit_uids массив uid юнитов, которые необходимо получить.

Выходные данные

  1. units - список успешно найденных юнитов.
  2. unreachable_objects - список временно не доступных юниты.
  3. not_found_objects - список не найденных юнитов.

Поле units имеет тип UnitDescriptor.

uid - это идентификатор юнита, состоящий из всех "родителей" юнита, разделенных символом "/". Например, для юнита Streaming.0 поле uid будет hosts/Node1/DeviceIpint.1/VideoChannel.0/Streaming.0.

display_id - короткий id, обычно уникальный в скоупе родителя. Например, для юнита DeviceIpint.1 display_id == 1 (иногда может идти вместе и type).

type - тип юнита. Например для юнита DeviceIpint.1 type == DeviceIpint.

properties - список настроек юнита.

units - вложенные юниты, которые могут идти как с полным описанием, так и урезанным.  В этом случае поле stripped == true и из описания доступны только поля: display_id, type, uid.

factory - это вложенные юниты, которые могут быть созданы для данного юнита. Доступны поля:

  • type - тип подюнита, который может быть создан.
  • properties - список настроек подюнита.
  • No labels