Оформление
Агент policy-sync-agent
Разделы, которые объявил этот конкретный агент: что в каждом показывается, чем можно фильтровать и что можно сделать.
Что это за агент
| Свойство | Значение |
|---|---|
| Имя в платформе | policy-sync-agent |
| Тип | policy-sync |
| Адрес управляющего API | http://127.0.0.1:8080/agent-api/v1 на стенде |
| Версия протокола | 1.0 |
| Версия расширения интерфейса | 1.1 |
Что делает: забирает из почтовых ящиков письма страховых компаний со списками застрахованных, читает приложенные списки, определяет программу по каждой строке, находит человека во внешней системе и отправляет запрос на прикрепление или открепление. Спорные строки откладывает человеку.
Устройство самого агента разобрано в архитектурном разделе: Референсный агент.
Эта страница только про один агент
Карточка внешнего агента у каждого агента своя. Основных разделов всего два, «Обзор» и «Задания», они одинаковы у всех и описаны на странице Внешние агенты.
Всё, что ниже, объявил именно policy-sync-agent. У другого агента будут другие разделы, другие столбцы и другие действия.
Что этот агент добавил к основным разделам
Основные разделы он не заменяет, а дополняет.
В раздел «Задания»
Свои столбцы:
| Столбец | Что показывает |
|---|---|
| СК | Страховая компания |
| Файл | Имя обрабатываемого файла |
| Строк | Сколько строк в списке |
| Источник | Ссылка на источник |
Свои подписи состояний задания:
| Состояние | Подпись |
|---|---|
queued | В очереди |
running | В работе |
succeeded | Завершено |
failed | Ошибка |
manual_review | Ручной разбор |
cancelled | Отменено |
Свой фильтр по типу задания, свой раздел карточки задания с обменом с внешней системой, где два блока данных, обработка и транзакции, и одно действие над строкой.
Повторить. Доступно у заданий в состоянии ошибки или ручного разбора. Спрашивает подтверждение и ставит повторный запуск в очередь.

Свои разделы этого агента
Шесть разделов, которых у платформы самой нет или которые агент заменил своими.
| Раздел | Почему появился |
|---|---|
| Почтовые ящики | Объявил агент. Своего такого раздела у платформы нет вообще |
| Настройки | Объявил агент, поэтому платформенная форма настроек не показывается |
| Реестр операций | Объявил агент, поэтому упрощённый платформенный вариант не показывается |
| Ручной разбор | То же правило |
| Письма | Объявил агент. Своего такого раздела у платформы нет вообще |
| Журнал | Появился потому, что этот агент ведёт историю событий |
Порядок в меню карточки задал сам агент.
Почтовые ящики
Раздел объявил агент. Своего такого раздела у платформы нет вообще.

Источники, из которых этот агент забирает письма.
| Столбец | Что показывает |
|---|---|
| Название | Имя ящика |
| Адрес | Адрес электронной почты |
| Host | Сервер |
| Папка | Из какой папки забираются письма |
| Интервал, с | Как часто опрашивать |
| Последний опрос | Когда последний раз забирали письма |
| Состояние | Включён ящик или нет |
| Ошибка | Текст последней ошибки |
Фильтр один: Только включённые.
Что можно сделать
| Действие | Что делает |
|---|---|
| Добавить ящик | Открывает форму создания: название, адрес, сервер, порт, папка, имя пользователя, пароль, интервал опроса |
| Изменить | Открывает ту же форму для выбранного ящика |
| Проверить | Подключается к ящику и сообщает, что соединение установлено |
| Опросить | Запускает один опрос ящика прямо сейчас. Результат появится в разделе «Задания» |
| Отключить | Останавливает опрос. Спрашивает подтверждение и предупреждает, что опрос остановится до повторного включения |
| Включить | Возобновляет опрос |
Пароль вводится, но не показывается
Поле пароля в форме помечено как только для записи: платформа его передаёт, но никогда не отображает обратно.
Если ящики не настроены, раздел покажет подсказку об этом.
Настройки

Форма настроек агента. Платформа не знает его полей: она строит форму по схеме, которую присылает сам агент.
Подпись на экране это объясняет и отдельно уточняет, что модель и ключ языковой модели здесь только отображаются, а выдаются они в разделе «Обзор».
Кнопка одна: Сохранить.
У раздела включена история изменений, поэтому видно, кто и когда менял настройки.
Реестр операций

По одной строке на пациента. Это результат работы агента: что он сделал с каждой записью из присланного списка.
| Столбец | Что показывает |
|---|---|
| Пациент | Фамилия, имя, отчество |
| Операция | Прикрепление, открепление или изменение |
| Программа ЕМЦ | Программа во внешней системе |
| СК | Страховая компания |
| Результат | Итог обработки |
| Ошибка | Текст ошибки |
| Файл | Из какого файла взята строка |
| Строка | Номер строки в файле |
| Создано | Дата и время |
Значения результата
| Значение |
|---|
| Выполнено |
| Выполнено, но требуется проверка |
| Не выполнено, ошибка |
| Не выполнено, требуется ручная проверка |
| Не выполнено, отказ |
Фильтры и выгрузка
| Фильтр | Как работает |
|---|---|
| Операция | Выбор из трёх значений |
| Поиск | По фамилии или имени файла |
| Период | Диапазон дат создания |
Раздел поддерживает выгрузку в файл xlsx, причём выгружается именно то, что отобрано фильтрами.
Карточка записи
Нажатие на строку открывает карточку с тремя разделами:
| Раздел | Что внутри |
|---|---|
| Пациент | Фамилия и имя, дата рождения, страховая, программа страховой, программа внешней системы, работодатель, срок действия |
| Источник | Отправитель, тема письма, время получения, файл, номер строки |
| Обмен с ЕМЦ | Точка API, признак успеха, применённое правило, ошибка, а также блоки данных с запросом, ответом и списком полисов |
В этом разделе персональные данные
Столбец с фамилией и поля карточки с фамилией, датой рождения и отправителем помечены агентом как персональные данные. Платформа учитывает эту пометку при проверке прав: чтобы их увидеть, нужно право просмотра персональных данных.
Ручной разбор

Случаи, которые агент не смог закрыть сам. Список обновляется автоматически раз в минуту.
| Столбец | Что показывает |
|---|---|
| Приоритет | Критический, высокий или обычный |
| Случай | Краткое описание |
| Категория | Тип случая |
| Причина | Код причины |
| Ящик | Из какого почтового ящика пришло |
| Тема | Тема письма |
| Этап | На каком шаге агент остановился |
| Статус | Состояние разбора |
| Создан | Дата и время |
Состояния разбора
| Состояние | Подпись |
|---|---|
OPEN | Открыт |
IN_PROGRESS | В работе |
READY_TO_RESUME | Готов к возобновлению |
RESOLVED | Закрыт |
CANCELLED | Отменён |
По умолчанию, когда фильтр статуса не выбран, показываются первые три состояния, то есть то, что действительно требует работы.
Фильтры
Четыре: статус, категория, причина, приоритет. Значения категорий и причин агент подставляет сам по тому, что реально есть в очереди.
Карточка случая
| Раздел | Что внутри |
|---|---|
| Причина | Категория, код причины, детали, этап, политика возобновления, версия |
| Источник | Ящик, отправитель, тема, время получения, файл, размер |
| Документ | Блоки данных: извлечение, нормализация, рабочая ревизия |
| Обмен с ЕМЦ | Блоки данных: обработка, транзакции |
Что можно сделать
| Действие | Что делает |
|---|---|
| Возобновить | Возвращает случай агенту, чтобы он продолжил обработку. Требует указать причину |
| Закрыть случай | Закрывает случай решением оператора. Требует выбрать вид решения и указать причину. Подтверждение предупреждает, что решение и его причина попадут в аудит агента |
Оба действия используют защиту от одновременной правки: если случай успел измениться, действие не применится.
Отдельным разделом агент объявил Кандидаты: варианты, которые он предлагает оператору на выбор. Таблица показывает тип, вариант, уточнение и оценку.
Письма

Контроль обработки каждого входящего письма. Раздел объявил агент.
| Столбец | Что показывает |
|---|---|
| Статус | Состояние обработки письма |
| Ящик | В какой ящик пришло |
| Отправитель | Адрес отправителя |
| Тема | Тема письма |
| Получено | Дата и время |
| Вложений | Сколько файлов приложено |
| Заданий | Сколько заданий создано |
| На разборе | Сколько случаев ушло в ручной разбор |
| Ошибок | Сколько заданий завершилось ошибкой |
Фильтры
Статус и период получения. Значения статуса: требует внимания, в обработке, завершено, ошибка, без действий.
Карточка письма
| Раздел | Что внутри |
|---|---|
| Письмо | Статус, ящик, отправитель, тема, время получения, число вложений и заданий |
| Разбор по заданиям | Блоки данных: вложения, задания, случаи разбора |
Зачем этот раздел нужен
Он отвечает на вопрос «а что вообще случилось с этим письмом». Из него видно, сколько файлов пришло, сколько заданий из них получилось, сколько ушло в ручной разбор и сколько сломалось, а карточка раскрывает подробности по каждому.
Журнал

Раздел появился потому, что этот агент ведёт историю событий. Платформа показывает свою собственную копию событий агента, а не спрашивает их у него заново. Подпись на экране это отмечает: события централизованные и замаскированные.
Экран поделён на две части: слева список событий, справа карточка выбранного.
| В списке | Что показывает |
|---|---|
| Время | Дата и время |
| Уровень | Степень серьёзности |
| Тип и предмет | Что произошло и с чем |
Уровни: DEBUG, INFO, WARNING, ERROR, CRITICAL.
Фильтры
Выбор уровня и поиск по типу события. Поиск применяется по нажатию Enter. Рядом кнопка обновления.
Карточка события
Сверху тип и предмет события, затем номер в последовательности, время и идентификатор связи, а внизу полные данные события.
Зачем нужен идентификатор связи
По нему можно собрать все события, относящиеся к одной работе агента. Это самый быстрый способ разобраться, что происходило с конкретным письмом или заданием.
Правила, одинаковые для любого объявленного раздела
Это уже не про этот агент, а про механизм платформы. Всё, что относится к разделам, объявленным любым агентом, устроено одинаково.
Персональные данные помечает агент. Столбцы и поля, которые их содержат, он помечает отдельно, а платформа учитывает эту пометку при проверке прав.
Секреты не отдаются наружу. Прежде чем данные раздела попадут в интерфейс, платформа вычищает всё, что похоже на пароли, ключи и токены, оставляя названия полей и убирая значения.
Действия защищены от повторов. Каждое действие снабжается уникальным ключом, поэтому повторное нажатие не выполнит его дважды.
Действия защищены от одновременной правки. Если запись успела измениться, действие не применится, и оператор об этом узнает.
Причина у части действий обязательна. Там, где агент этого требует, платформа не даст выполнить действие без указания причины, и причина попадёт в аудит.