Моя проблема: когда заказ обрабатывается, один и тот же документ необходимо распечатать на двух принтерах.
Предлагаемое мной решение: создать единую очередь в CUPS с помощью внутреннего сценария, который распределяет задание между двумя реальными очередями принтеров.
Моя проблема: Документация. Может быть, я смотрю на каждое кольцо вокруг яблока, но я не могу найти ничего, что излагало бы правила написания бэкэнд-скрипта CUPS.
В итоге у меня есть несколько вопросов:
lpadmin -p MultiPass -E -v multipass -P Generic PostScript Printer
". Но DeviceURI плох, если я не укажу каталог вроде"-v multipass:/tmp
". Почему это?Я постарался сделать этот вопрос кратким, поэтому, пожалуйста, запрашивайте дополнительную информацию, поскольку я уверен, что упустил самую важную часть из всего этого. Честно говоря, я просто закончил гоняться за собственным хвостом. Спасибо за уделенное время.
Я нашел серверную часть под названием Чай4Кубки который доступен Вот. Вы можете покопаться в дереве SVN и найти более ранние или более поздние версии.
Возможности безграничны :
- Отправить одно и то же задание на несколько принтеров одновременно, что невозможно с CUPS.
- Автоматизируйте архивирование PDF всех заданий на печать.
- Запретить повторяющиеся задания на печать (простой пример показан в образце файла конфигурации)
- Создайте решение для учета печати за 15 минут (ДА, ЭТО НАСТОЯЩЕЕ)
- и т.д...
Эта страница объясняет разницу между покупкой этого скрипта и его бесплатной загрузкой.
Вот другой подход. Он использует сценарий оболочки для печати документа один раз для каждого принтера и настраивает этот сценарий в качестве интерфейса.
#!/bin/bash
# if you don't have bash, use /bin/sh
# don't leave off the first line - absolutely needed for cups!
/usr/bin/lp -dprinter1 $6
/usr/bin/lp -dprinter2 $6
/usr/bin/lp -dprinter3 $6
chmod 755 ~/myinterfacefile
lpadmin -p threeprint -E -i ~/myinterfacefile -v /dev/null
Отправка заданий в «threeprint» (lp -d threeprint somefile) теперь будет печататься на всех трех принтерах.