更完整的 CUPS 打印机状态原因列表

More Complete List of CUPS printer-state-reasons

RFC8011 第 152 页中有一个打印机可能具有的常见状态原因列表。在我的测试中,这个列表似乎很不完整。是否有更完整的 CUPS 列表?

未列出的打印机状态状态原因的一些示例:

我敢肯定还有更多示例,但这些是我找到并记录的示例。

编辑: M. Sweet 非常友好地提供了来自 IANA 的列表:https://www.iana.org/assignments/ipp-registrations/ipp-registrations.xml

cups source code seems to illustrate quite a few state reasons that don't appear in that RFC. Since the same author -- M. Sweet 作者既是 RFC 又是 CUPS 源代码的维护者,这可能值得在 GitHub 上作为错误报告归档,以了解两者为何不同。

例如,2013 年,cups-waiting-for-completed was added and about a day later was renamed to cups-waiting-for-job-completed, 比 2017 年最新发布的 RFC 早了 4 年。

RFC 按以下顺序提及以下代码:

none
other
developer-low
door-open
fuser-over-temp
fuser-under-temp
input-tray-missing
interlock-open
interpreter-resource-unavailable
marker-supply-empty
marker-supply-low
marker-waste-almost-full
marker-waste-full
media-empty
media-jam
media-low
media-needed
moving-to-paused
opc-life-over
opc-near-eol
output-area-almost-full
output-area-full
output-tray-missing
paused
shutdown
spool-area-full
stopped-partly
stopping
timed-out
toner-empty
toner-low

不过job.c的源代码似乎也提到了以下状态(包括问题中提到的两个)。我认为这是一份详尽的清单,直到出现更多为止。

connecting-to-device
offline-report
cups-insecure-filter-warning
cups-missing-filter-warning
cups-remote-aborted
cups-remote-canceled
cups-remote-completed
cups-remote-pending
cups-remote-pending-held
cups-remote-processing
cups-remote-stopped
cups-waiting-for-job-completed

至于跟踪添加新关键字的最佳方式,M. Sweet 也可以提供有关新州关键字的来源的信息。这是似乎提示 cups-waiting-for-job-completed.

的内容的提交描述

msweet committed on Nov 6, 2013 Dropped "dark wake" support on OS X, which was preventing portables from going to sleep when there was a stuck job. We now use a variation of the CUPS 1.4 sleep support to do a cleaner sleep <rdar://problem/14323704> Aside from removing all of the power assertions, we now track a new "cups-waiting-for-completed" state keyword that tells cupsd it can SIGKILL a backend without side-effects - then if we are just waiting for the job to complete we can go to sleep immediately.