2009-09-17 65 views
1

我需要每一个Mac的打印作业创建/完成时间就知道了,再加上有关工作的一些信息(什么是印刷,网页,拷贝等)。我如何告诉当CUPS打印作业已完成有关工作以及信息?

我到目前为止最好的方法是在/ var/spool/cups /上使用kqueue(),然后在创建时解析C#####文件,但是我想知道如果有更好的方法。

+0

这可能会得到更多的答复上serverfault.com – 2009-09-17 17:35:45

回答

1

我想创建一个过滤器,你可以把到CUPS管道收集(在数据库中的发言权)这一信息,并将其存储为您服务。然后,您可以访问数据库以使用任何标准数据库访问机制来获取信息。基本滤波器仅仅是得到了一些从CUPS传递给它的参数,需要在stdin读取输入,并将其写入到stdout一个命令行程序。你可以在http://www.cups.org/documentation.php/api-filter.html找到更多信息。

+0

我喜欢这个主意了很多。有关如何使用此路线取消工作时的任何想法? – 2009-09-17 22:14:30

+0

我认为有一些方法与后端进行通信。实际上我没有为CUPS实现一个过滤器,尽管我当时在某些LPR过滤器上工作。请参阅关于与后端进行通信的部分。你必须使用一个将设备状态写回到过滤器的后端,但我认为大部分情况都是这样,页面计数软件可以轻松挂钩并做正确的事情。 – tvanfosson 2009-09-17 23:14:04

+0

非常好,非常感谢。 – 2009-09-17 23:38:45

1

你有没有看什么页面日志文件提供给你?有一个提供其格式细节的手册页。 CUPS的最新版本将允许您配置记录在该文件中的信息量。

+0

我没有,谢谢你指出。 – 2010-06-07 15:46:56

相关问题