Skip to main content

Жизненный цикл задания печати в Принтум


title: Жизненный цикл задания печати в Принтум slug: zhiznennyy-cikl-zadaniya-pechati tags: [задание печати, архитектура, путь задания, CUPS, Клиент ПМ, бесклиентская] domain: Printing type: Overview audience: partner-engineer product_versions: "4.x" status: Draft related_components: [ПринтМенеджер, Клиент ПМ, Встроенное приложение] related_pages:

  • kak-printum-obrabatyvaet-zadanie-pecati
  • put-zadaniia-pri-pecati-cerez-klient-pm
  • put-zadaniia-pri-besklientskoi-pecati
  • kak-rabotaet-otlozennaia-pecat

Жизненный цикл задания печати в Принтум

Когда использовать

Для понимания полного пути задания — от нажатия «Печать» на АРМ до выхода документа из МФУ. Помогает локализовать проблему на нужном этапе.


Схемы печати

Принтум поддерживает две схемы отправки заданий:

Схема Описание
Через Клиент ПМ На АРМ устанавливается Клиент ПМ. Он добавляет виртуальные МФУ, перехватывает задание из локальной очереди, конвертирует в PDF, применяет экономию тонера и передаёт в ПринтМенеджер
Бесклиентская печать На АРМ не устанавливается ПО Принтум. Используется универсальный драйвер (Xerox Global Print Driver PS, Konica Minolta Universal PS, HP Universal Printing PS), в котором указан адрес сервера ПринтМенеджера. Драйвер формирует задание и отправляет напрямую в CUPS ПринтМенеджера

Дальнейшая обработка в ПринтМенеджере одинакова для обеих схем.


Путь задания при бесклиентской печати

Этап 1 — Отправка с АРМ

Пользователь в приложении (Word, Excel, браузер) нажимает «Печать» и выбирает МФУ — для прямой или отложенной печати.

Универсальный драйвер формирует задание в формате PostScript (PS) и отправляет его напрямую в CUPS ПринтМенеджера.

Компонент: Универсальный драйвер на АРМ → CUPS ПринтМенеджера


Этап 2 — Получение задания ПринтМенеджером

ПринтМенеджер периодически опрашивает свой CUPS. При обнаружении нового задания создаёт внутри системы собственное пустое задание и заполняет его атрибутами, полученными при парсинге исходного задания с АРМ.

Парсируемые атрибуты:

  • формат страницы
  • дуплекс
  • количество страниц
  • цветность
  • ориентация
  • разбор по копиям
  • финишные опции

Компонент: printmanager-celery-print-queue, printmanager-app


Этап 3 — Конвертация

Проверяется настройка USE_PS_PRINTING:

  • Выключена → задание конвертируется в PDF.
  • Включена → конвертация в PDF выполняется только если есть правила по цветности/количеству страниц или правило автоудаления. В остальных случаях — остаётся в PS.

Компонент: printmanager-app


Этап 4 — Применение правил печати

После конвертации проверяются и применяются правила печати (ограничения, перенаправление, цветность, дуплекс и др.).

Исходное задание, пришедшее с АРМ, удаляется из CUPS — далее используется только пересобранное задание ПринтМенеджера.

Компонент: printmanager-app


Этап 5а — Прямая печать

Задание отправляется из ПринтМенеджера в CUPS → CUPS передаёт на МФУ → МФУ печатает.

Компонент: printmanager-cups


Этап 5б — Отложенная печать

Задание остаётся в очереди ПринтМенеджера. При авторизации пользователя на МФУ Встроенное приложение запрашивает у ПринтМенеджера список заданий пользователя. При нажатии «Печать» в приложении МФУ отправляет запрос в ПринтМенеджер → ПринтМенеджер передаёт задание в CUPS → CUPS передаёт на МФУ → МФУ печатает.

Компонент: printmanager-app, printmanager-cups, Встроенное приложение


Этап 6 — Архивирование и статистика

После успешной печати ПринтМенеджер переводит задание в архив и обновляет статистику. В Мониторинг обновлённая статистика попадает после синхронизации.

Компонент: printmanager-app, синхронизация с Мониторингом


Путь задания при печати через Клиент ПМ

Этап 1 — Отправка с АРМ

Пользователь нажимает «Печать» в приложении → задание попадает в локальную очередь печати АРМ (системная очередь Windows/Linux).

Компонент: ОС АРМ


Этап 2 — Перехват Клиентом ПМ

Клиент ПМ отслеживает локальную очередь печати, получает задание и конвертирует его в PDF.

Клиент ПМ парсит атрибуты задания (те же что и при бесклиентской печати).

Компонент: Клиент ПМ


Этап 3 — Передача в ПринтМенеджер и применение правил

Клиент ПМ добавляет задание в очередь ПринтМенеджера. ПринтМенеджер проверяет и применяет правила печати.

Компонент: Клиент ПМ → printmanager-app


Этап 4 — Экономия тонера

Клиент ПМ запрашивает из ПринтМенеджера настройки оптимизации (экономия тонера) и применяет алгоритм к документу. После этого передаёт образ документа обратно в ПринтМенеджер.

Компонент: Клиент ПМ


Этап 5а — Прямая печать

Клиент ПМ отправляет задание в CUPS ПринтМенеджера → CUPS передаёт на МФУ → МФУ печатает.

Компонент: Клиент ПМ → printmanager-cups


Этап 5б — Отложенная печать

Клиент ПМ не отправляет задание в CUPS — оно остаётся в очереди ПринтМенеджера. Дальнейший путь идентичен отложенной печати при бесклиентской схеме.

Компонент: printmanager-app, printmanager-cups, Встроенное приложение


Этап 6 — Архивирование и статистика

Аналогично бесклиентской схеме: ПринтМенеджер переводит задание в архив и обновляет статистику печати. В Мониторинг данные попадают после синхронизации.

Компонент: printmanager-app, синхронизация с Мониторингом


Сводная таблица: этап → компонент → диагностика

Этап Схема Компонент Где искать если проблема
Отправка с АРМ Клиентская Клиент ПМ, локальная очередь ОС Лог Клиента ПМ; journalctl или Event Viewer
Отправка с АРМ Бесклиентская Универсальный драйвер Настройки драйвера; порт CUPS (631)
Получение CUPS Обе printmanager-cups, printmanager-celery-print-queue docker-compose logs printmanager-cups
Парсинг и создание задания Обе printmanager-app docker-compose logs printmanager-app
Конвертация PS→PDF Обе printmanager-app docker-compose logs printmanager-app
Применение правил Обе printmanager-app docker-compose logs printmanager-app
Экономия тонера Клиентская Клиент ПМ Лог Клиента ПМ
Отложенная очередь Обе printmanager-app docker-compose logs printmanager-app; панель ПринтМенеджера → Задания
Авторизация на МФУ Отложенная printmanager-app, printmanager-converter-server docker-compose logs printmanager-app
Печать на МФУ Обе printmanager-cups docker-compose logs printmanager-cups
Синхронизация статистики Обе printmanager-celery, printum_worker-* docker-compose logs printmanager-celery

Связанные страницы