gpt4 book ai didi

printing - CUPS 在仍在打印的作业上返回 'complete'

转载 作者:行者123 更新时间:2023-12-03 23:25:23 30 4
gpt4 key购买 nike

我正在使用 IPP 协议(protocol)与 CUPS 通信。我在 CUPS 中安装了我的打印机的所有驱动程序(使用 .ppd 文件),并且打印机获得了最新的固件。

当我查询打印机正在打印的作业时,它说作业的状态在打印机完成打印之前就已经“完成”了。似乎 CUPS 在完成“上传”文件时将作业标记为“完成”。

我不希望出现这种行为,我基本上需要知道打印机打印作业的最后一张纸的确切时间。
代码如下所示。 self.printer().ippPrinter()node-ipp 的一个实例它指向一台打印机。要读取我正在使用属性 'job-state' 的作业状态.

var msg = {
"operation-attributes-tag": {
'job-id': id
}
};

self.printer().ippPrinter().execute("Get-Job-Attributes", msg, function(err, res){
var attributes = res['job-attributes-tag'];

self.setAttributes = attributes;
callback.call(self, attributes);
});

有谁知道我为什么会遇到这个问题或..如何使它工作?
谢谢!

最佳答案

CUPS 只能转发从打印机接收到的作业状态。许多打印机驱动程序和协议(protocol)的工作方式类似于“即发即弃”。
通常 IPP 打印机允许 CUPS 和其他客户端监控当前的作业状态,直到它完成/打印。一些制造商没有正确实现 IPP 并将提交的作业归类为已打印 - 即使打印机卡纸!
结论:
如果您的打印机不完全支持 IPP,您可能无法检查“打印成功”。

RFC 8011 5.3.7.1
如果实现是一个从不提供打印作业详细状态的打印系统的网关,那么实现可以将 IPP 作业的状态设置为“已完成”,前提是它还在作业的“工作状态原因”属性

关于printing - CUPS 在仍在打印的作业上返回 'complete',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24488953/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com