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

Предыдущая страница Следующая страница

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

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

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

  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