我需要每一個Mac的打印作業創建/完成時間就知道了,再加上有關工作的一些信息(什麼是印刷,網頁,拷貝等)。我如何告訴當CUPS打印作業已完成有關工作以及信息?
我到目前爲止最好的方法是在/ var/spool/cups /上使用kqueue(),然後在創建時解析C#####文件,但是我想知道如果有更好的方法。
我需要每一個Mac的打印作業創建/完成時間就知道了,再加上有關工作的一些信息(什麼是印刷,網頁,拷貝等)。我如何告訴當CUPS打印作業已完成有關工作以及信息?
我到目前爲止最好的方法是在/ var/spool/cups /上使用kqueue(),然後在創建時解析C#####文件,但是我想知道如果有更好的方法。
我想創建一個過濾器,你可以把到CUPS管道收集(在數據庫中的發言權)這一信息,並將其存儲爲您服務。然後,您可以訪問數據庫以使用任何標準數據庫訪問機制來獲取信息。基本濾波器僅僅是得到了一些從CUPS傳遞給它的參數,需要在stdin讀取輸入,並將其寫入到stdout一個命令行程序。你可以在http://www.cups.org/documentation.php/api-filter.html找到更多信息。
我喜歡這個主意了很多。有關如何使用此路線取消工作時的任何想法? – 2009-09-17 22:14:30
我認爲有一些方法與後端進行通信。實際上我沒有爲CUPS實現一個過濾器,儘管我當時在某些LPR過濾器上工作。請參閱關於與後端進行通信的部分。你必須使用一個將設備狀態寫回到過濾器的後端,但我認爲大部分情況都是這樣,頁面計數軟件可以輕鬆掛鉤並做正確的事情。 – tvanfosson 2009-09-17 23:14:04
非常好,非常感謝。 – 2009-09-17 23:38:45
你有沒有看什麼頁面日誌文件提供給你?有一個提供其格式細節的手冊頁。 CUPS的最新版本將允許您配置記錄在該文件中的信息量。
我沒有,謝謝你指出。 – 2010-06-07 15:46:56
這可能會得到更多的答覆上serverfault.com – 2009-09-17 17:35:45