Предпросмотр документов
Общая информация
Предпросмотр в браузере работает с форматами pdf и изображениями. Для этих типов никакой дополнительной логики не требуется и их предпросмотр работает в community версии.
Для содержимого, которое не соответствует поддерживаемым форматам, происходит автоматическая конвертация в pdf (только в enterprise версии). Подробнее см. Механизм конвертации: Трансформация содержимого документов
Предпросмотр автоматически генерируется для основного контента.
Основной контент — контент в атрибуте с id
contentили другой, но в конфигурации типа он должен быть указан вcontentConfig → path. Подробнее см. Конфигурация контента
Условия автоматической генерации превью
Тип документа унаследован от user-base прямо или косвенно.
У документа есть атрибут с основным контентом.
Процесс генерации
В системе происходит создание сущности с основным контентом или изменение основного контента.
Микросервис ecos-transformations подписан на события из п.1 и создаёт или обновляет thumbnail с форматом pdf.
Микросервис ecos-transformations выполняет конвертацию основного контента документа в формат pdf и записывает результат в основной контент thumbnail.
Thumbnail
Это некоторое представление основного документа в заданном формате. Атрибуты:
content: CONTENT // основное сгенерированное содержимое
mimeType: TEXT // MIME-тип содержимого для этого thumbnail
srcSha256: TEXT // хэш исходного контента
srcAttribute: TEXT // атрибут с исходным контентом
status: TEXT // статус обработки: DRAFT, PROCESSING, PROCESSED, FAILED
nextTryTime: DATETIME // время следующей попытки сгенерировать контент в случае неудачи
failsCount: NUMBER // текущее количество неудачных попыток сгенерировать контент
failDescription: TEXT // описание последней ошибки генерации
Thumbnail сущности создаются как дочерние к основному документу.
Thumbnail repair job
В микросервисе ecos-transformations настроена джоба, которая занимается обработкой thumbnail’ов, зависших в некорректном статусе.
Варианты некорректных статусов:
Статус: PROCESSING и время последнего изменения thumbnail старше 30 минут.
Статус: FAILED и время в
nextTryTimeменьше чем текущее время.