Элементы очереди

Переход к элементам очереди осуществляется со страницы Роботы > Очереди обмена данными. Для этого найдите в таблице очередей нужную запись и кликните на количество элементов в ее диаграмме.

Создание элемента

Чтобы добавить элемент в очередь обмена данными:

  1. Вверху страницы нажмите кнопку Добавить элемент.

  2. Укажите параметры элемента:

    • Значение (JSON)* — значение элемента очереди. Заполняется в виде JSON. Это обязательный параметр.

    • Дата, до которой элемент считается недоступным — дата и время, до которого откладывается обработка элемента роботом.

    • Дата, после которой элемент считается недоступным — дата и время, после которого элемент будет удален из очереди.

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

    • Приоритет — дополнительный параметр, согласно которому элементы будут сортироваться для извлечения из очереди. Используется следующий механизм сортировки:

      • Если приоритета нет (или он совпадает у нескольких элементов), то элементы сортируются по дате добавления.

      • Если приоритет указан, то для сортировки используется сначала он, а потом дата добавления. Значение 0 — это высший приоритет. Чем выше значение, тем ниже приоритет элемента. Число не может быть отрицательным.

    • Метаданные — словарь вида «Ключ-значение» с произвольными строковыми данными.

  3. Сохраните изменения.

Теги элемента

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

  1. Выделите в таблице нужный элемент очереди (1).

  2. Нажмите ставшую активной кнопку Теги элемента (2).

  3. Вверху открывшейся страницы нажмите кнопку Добавить тег.

Статусы элемента

Текущее состояние элемента можно увидеть в таблице, в колонке Статус:

Созданный элемент автоматически получает статус New (Новый). Последующая смена статусов зависит от обработки элемента роботом.

Существуют следующие статусы элемента:

  • New — элемент добавлен в очередь, но еще не извлечен.

  • InProgress — элемент извлечен из очереди.

  • Success — обработка элемента завершена успешно.

  • Error — обработка элемента завершена с ошибкой общего вида.

  • Business Error — обработка элмента завершена с бизнес-ошибкой.

Присвоение финальных статусов (Success, Error, Business Error) возможно только из статуса InProgress — т.е. когда элемент извлечен роботом для дальнейшей работы.

В истории статусов в БД фиксируются только финальные статусы. Статусы New и InProgress являются логическими и вычисляются системой по косвенным признакам.

Управление элементами

Элементы очереди можно изменять, удалять, клонировать и повторять. Для этого вверху страницы очереди есть соответствующие кнопки.

🔹 Примечание. Робот может удалять и изменять только те элементы, которые сам извлек из очереди.

При клонировании и повторении элементы снова ставятся в очередь:

  • Клонированный элемент — это полностью новый элемент с новым идентификатором, аналогичный оригинальному элементу. У него нулевой счетчик повторов.

  • Повторенный элемент — это физически тот же самый элемент, который переводится в статус «Новый». У него не меняется идентификатор. При повторе элемента сбрасывается признак его прочтения, ссылка на текущий статус и счетчик повторов.

Таким образом, клонирование создает копию элемента, а повтор — возвращает в статус New элемент, который был обработан или удален из очереди при логическом типе удаления.

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

Last updated