我正在尝试将用户列表发送到施乐以用于网络记账目的。
我使用 2 个 Xerox 型号(XEROX WorkCentre 7556 和 XEROX WorkCentre 7830)成功完成此操作,遵循 PHP 中的 sudo 代码:
function SendUsersToXerox($ip,$users)
{
$url="{$ip}/acct/set_auth";
$auth='account:jbaserve';
$post="+aaav1.0\n+purge\n";
foreach ($users as $u)
{
$post.="+u\"{$u->login}\"\"{$u->code}\"\n";
}
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_USERAGENT, 'EQ Device Control Engine');
curl_setopt($ch,CURLOPT_POST, 1);
curl_setopt($ch,CURLOPT_POSTFIELDS,$post);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch, CURLOPT_FRESH_CONNECT, TRUE);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
curl_setopt($ch, CURLOPT_USERPWD, "$auth");
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/xrx-acct-data']);
$data = curl_exec($ch);
$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
// echo "HTTP CODE: {$httpcode}<br/>";
// echo $data;
}
此代码在上述 Xerox 上完美运行,但在 C70 上失败,并出现 401 错误和以下消息:
Invalid accounting authentication version
设备上启用了网络记帐,我可以通过 URL acct/get_acct 收集打印机的所有作业
如果我传入错误的发布数据,我会收到不同的错误消息:
HTTP Return 400
The Request had invalid syntax
我在任何地方都找不到任何对 JBA 或网络会计的引用,并且不确定如何查明 set_auth 上的格式是否已更改或者是否需要设置版本差异。
我知道 get_acct 输出存在差异,确实指向不同版本的会计。
答案很简单。 除了以下内容之外,一切都正确:
$post="+aaav1.0+\n+purge\n";
v1.0之后的加号(+)允许上传用户进行记账。
Xerox Network Accounting (JBA) C70 允许企业有效地跟踪和管理整个网络的打印成本。通过分配会计用户,企业可以将打印作业分配给特定部门或用户、监控使用情况并管理与打印相关的费用。
以下是使用 Xerox Network Accounting (JBA) C70 发送会计用户的一些好处:
成本分配:根据C70设备的使用情况,轻松将打印成本分配给不同的用户或部门。
使用情况监控:跟踪每个会计用户打印、复印或扫描的数量。
报告:生成详细的使用情况和成本报告,以分析打印习惯并控制成本。
访问控制:设置用户权限并限制对某些功能的访问,确保只有授权用户才能发送打印作业。
会计集成:将打印数据与您的会计系统同步,以简化财务跟踪。
欲了解更多信息和定制解决方案,请访问 synkli.com.au。