Конфигурация расширения

Материал из Документация Ключ-АСТРОМ

Расширения АктивногоШлюза предназначены для мониторинга удаленных технологий, недоступных ЕдиномуАгенту КлючАстром. По этой причине каждое устройство должно быть определено явно. Мы называем его the technology endpointи определяем его с помощью конфигурации расширения.

Помимо полей Endpoint nameи Choose ActiveGateв расширении JSON можно указать свои. Значения, которые вы установили в пользовательском интерфейсе, позже можно будет использовать в коде расширения Python.

Вы можете выбрать один из следующих типов свойств:

  • String
  • Boolean
  • Integer
  • Float
  • Password
  • Textarea
  • Dropdown

Как реализовать и использовать конфигурацию расширения

JSON-декларация

Отредактируйте propertiesраздел, чтобы объявить конфигурацию расширения. Каждое свойство состоит из следующих полей:

  • key- уникальный идентификатор свойств объекта
  • type- один из перечисленных выше
  • defaultValue(необязательно) — значение свойств, если оно не указано
  • dropdownValues(необязательно) — используется только для типа свойства «Раскрывающийся список» . Он не должен быть пустым, и вы должны объявить значение по умолчанию.

{

  "url": "http://localhost:8769"

}

Расширение JSON позволяет вам предоставить описание ваших свойств. Это необязательно, но это дает вам контроль над внешним видом вашей конфигурации в пользовательском интерфейсе. Отредактируйте configUIраздел, чтобы описать представление ваших свойств.

{

  "configUI": {

    "displayName": "My plugin",

    "properties": [

      {

        "key": "string_prop",

        "displayName": "String property",

        "displayOrder": 1

      },

      {

        "key": "boolean_prop",

        "displayName": "Boolean property",

        "displayOrder": 2

      },

      {

        "key": "integer_prop",

        "displayName": "Integer property",

        "displayOrder": 3

      },

      {

        "key": "float_prop",

        "displayName": "Float property",

        "displayOrder": 4

      },

      {

        "key": "password_prop",

        "displayName": "Password property",

        "displayHint": "hint",

        "displayOrder": 5

      },

      {

        "key": "textarea_prop",

        "displayName": "Textarea property",

        "displayHint": "hint",

        "displayOrder": 6

      },

      {

        "key": "dropdown_prop",

        "displayName": "Dropdown property",

        "displayOrder": 7

      }

    ]

  }

}

  • key- сопоставляет конфигурацию пользовательского интерфейса со свойством
  • displayName- описывает входную метку. Ключ свойства будет использоваться, если не указан.
  • displayHint— описывает заполнитель для ввода свойства. По умолчанию пусто.
  • displayOrder- позволяет изменить порядок ввода. По умолчанию это соответствует порядку объявления.

Дополнительную информацию см. в справочнике по расширениям .

Использование Python

При работе с кодом Python вы можете прочитать конфигурацию, как в примере ниже:

def initialize(self, **kwargs):

        config = kwargs['config']

        string_prop = config['string_prop']

        boolean_prop = config['boolean_prop']

        integer_prop = config['integer_prop']

        float_prop = config['float_prop']

        password_prop = config['password_prop']

        textarea_prop = config['textarea_prop']

        dropdown_prop = config['dropdown_prop']