打印机SNMP监控

mib-2(1.3.6.1.2.1)
   └──host(25)
   |       └───hrDevice(3)hr设备
   |                 └────hrDeviceTable(2)──────hrDeviceEntry(1)
   |                    																				└───────hrDeviceDescr(3)
   |                    																				└───────hrDeviceStatus(5)
   |                 └────hrPrinterTable(5)─────hrPrinterEntry(1)───hrPrinterStatus(1)
   |                 																						└───────hrPrinterDetectedErrorState(2)
   └──Printer-MIB(43)
   |       └───prtAlert(18)───prtAlertTable(1)───prtAlertEntry(1)───prtAlertSeverityLevel(2)
   |                																						└───────prtAlertTrainingLevel(3)
   |                																						└───────prtAlertGroup(4)
   |                																						└───────prtAlertLocation(6)
   |                																						└───────prtAlertCode(7)

[2]。hrDeviceTable:主机设备表 [NONACCESS],[U]
     1) hrDeviceEntry:入口: [NONACCESS]
         3]。hrDeviceDescr:该设备的文本描述  [R]
         4]。hrDeviceID:该设备的产品ID   [R]
         5]。hrDeviceStatus:设备状态 (未知,运行,警告,测试,DOWN)《NO》 [R]
         6]。hrDeviceErrors:检测到的设备错误。默认为0 《NO》  [R]
[5]。hrPrinterTable:主机的打印机设备表 《NO》 [NONACCESS],[P]
     1)	hrPrinterEntry:入口:hrDeviceIndex索引  [NONACCESS]
         1]。hrPrinterStatus:打印机状态(其他,未知,空闲,打印,热启)
         2]。hrPrinterDetectedErrorState:检测到的错误类型:少纸,没纸,少墨,没墨,门开,堵塞,掉线,服务请求等。

SNMP获取Printer状态流程图

SNMP与打印机状态相关的基础的OID及其数据结构

对象类型 语法:32位计数器 最大权限:只读 状态:现行 描述

OBJECT-TYPE;ACCESS read-only;STATUS mandatory

名称 OID 语法 描述 上级节点
设备实体描述(sysDescr) .1.3.6.1.2.1.1.1.0 STATUS mandatory SYNTAX DisplayString (SIZE (0..255)) 获取系统基本信息,此对象为只读的显示串,它包含所用硬件、操作系统和网络软件的名称和版本等完整信息。 ::= { system 1 }
hr设备描述(hrDeviceDescr) 1.3.6.1.2.1.25.3.2.1.3 STATUS mandatory SYNTAX DisplayString (SIZE (0..64)) A textual description of this device, including the device's manufacturer and revision, and optionally, its serial number. ::= { hrDeviceEntry 3 }
hr打印机状态(hrPrinterStatus) 1.3.6.1.2.1.25.3.5.1.1.1 STATUS mandatory SYNTAX INTEGER { other(1), unknown(2), idle(3), printing(4), warmup(5) } 打印机当前状态。注意:处于idle(1), printing(2), 或warmup(3)状态时,相应hrDeviceStatus应该为running(2)运行或者warning(3)警告,当处于unknown状态时,相应hrDeviceStatus则处于unknown(1)未知。 整数值,Object ID为1.3.6.1.2.1.25.3.5.1.1.1,表示此打印机目 前的工作状态,数值定义为:other(1), unknown(2), idle(3), printing(4), warmup(5)。 ::= { hrPrinterEntry 1 }
hr设备状态(hrDeviceStatus) 1.3.6.1.2.1.25.3.2.1.5.1 STATUS mandatory SYNTAX 整数值INTEGER { unknown(1), running(2), warning(3), testing(4), down(5) } 表示此设备目前的工作状态,数值定义如下︰ unknown(1) :未知的状态,无法取得相关信息。 running (2) :正常运作中。 warning(3) :有某种程度的错误(如磁盘设备驱动引起的软件性批操作错误),但依旧是可操作状态。 testing(4) :测试状态,无法使用。 down(5) :无法使用。 ::= { hrDeviceEntry 5 }
hr 打印机检测到错误状态(hrPrinterDetectedErrorState) 1.3.6.1.2.1.25.3.5.1.2.1 STATUS mandatory SYNTAX 8位字符(OCTET STRING) 表示目前的错误状态,每一个bit都代表一种错误状态,当某一bit为high(1),则表示此错误发生,为(0)则表示无错错误。每一bit定义如下:

状态 字位 hrDeviceStatus

lowPaper少纸 0 warning(3)

noPaper没纸 1 down(5)

lowToner少墨 2 warning(3)

noToner没墨 3 down(5)

doorOpen门开 4 down(5)

jammed堵塞 5 down(5)

offline掉线 6 down(5)

serviceRequested服务请求 7 warning(3) 

inputTrayMissing缺少入盘 8

outputTrayMissing缺少出盘 9

markerSupplyMissing补给记号丢失 10

outputNearFull输出快满 11

outputFull输出满 12

inputTrayEmpty输入盘空 13

overduePreventMaint防慢 14

如果多个错误被侦测到,则hrDeviceStatus就不会是"unknown(1)"或"testing(4)",而是取当前错误中的最严重状态(down(5)>warning(3)>running(2))。 字位左到右顺序是高位到低位,类似小端模式(LE little-endian鸡蛋圆头小端)顺序。 本状态有利于在需要人工干预纠正时,根据具体错误来决定提示用户警告信息或致命错误信息
::= { hrPrinterEntry 2 }
打印告警代码(prtAlertCode) 1.3.6.1.2.1.43.18.1.1.7 This value is a type 2 enumeration STATUS current SYNTAX INTEGER { other(1), unknown(2), -- codes common to serveral groups coverOpen(3), coverClosed(4), interlockOpen(5), interlockClosed(6), configurationChange(7), jam(8), -- RFC 3805 Generic codes subunitMissing(9) subunitLifeAlmostOver(10) subunitLifeOver(11) subunitAlmostEmpty(12) subunitEmpty(13) subunitAlmostFull(14) subunitFull(15) subunitNearLimit(16) subunitAtLimit(17) subunitOpened(18) subunitClosed(19) subunitTurnedOn(20) subunitTurnedOff(21) subunitOffline(22) subunitPowerSaver(23) subunitWarmingUp(24) subunitAdded(25) subunitRemoved(26) subunitResourceAdded(27) subunitResourceRemoved(28) subunitRecoverableFailure(29) subunitUnrecoverableFailure(30) subunitRecoverableStorageError(31) subunitUnrecoverableStorageError(32) subunitMotorFailure(33) subunitMemoryExhausted(34) subunitUnderTemperature(35) subunitOverTemperature(36) subunitTimingFailure(37) subunitThermistorFailure(38)-- general Printer group doorOpen(501), doorClosed(502), powerUp(503), powerDown(504), -- Input Group inputMediaTrayMissing(801), inputMediaSizeChange(802), inputMediaWeightChange(803), inputMediaTypeChange(804), inputMediaColorChange(805), inputMediaFormPartsChange(806), inputMediaSupplyLow(807), inputMediaSupplyEmpty(808), -- Output Group outputMediaTrayMissing(901), outputMediaTrayAlmostFull(902), outputMediaTrayFull(903), -- Marker group markerFuserUnderTemperature(1001), markerFuserOverTemperature(1002), -- Marker Supplies group markerTonerEmpty(1101), markerInkEmpty(1102), markerPrintRibbonEmpty(1103), markerTonerAlmostEmpty(1104), markerInkAlmostEmpty(1105), markerPrintRibbonAlmostEmpty(1106), markerWasteTonerReceptacleAlmostFull(1107), markerWasteInkReceptacleAlmostFull(1108), markerWasteTonerReceptacleFull(1109), markerWasteInkReceptacleFull(1110), markerOpcLifeAlmostOver(1111), markerOpcLifeOver(1112), markerDeveloperAlmostEmpty(1113), markerDeveloperEmpty(1114), -- Media Path Device Group mediaPathMediaTrayMissing(1301), mediaPathMediaTrayAlmostFull(1302), mediaPathMediaTrayFull(1303), -- interpreter Group interpreterMemoryIncrease(1501), interpreterMemoryDecrease(1502), interpreterCartridgeAdded(1503), interpreterCartridgeDeleted(1504), interpreterResourceAdded(1505), interpreterResourceDeleted(1506), interpreterResourceUnavailable(1507) } The code that describes the type of alert for this entry in the table. There are different codes for each sub-unit type: for example, Media Supply Low and MediaSupply Empty are Aler codes for the Input sub-unit. ::= { prtAlertEntry 7}
打印告警组(prtAlertGroup) 1.3.6.1.2.1.43.18.1.1.4 This value is a type 1 enumeration STATUS current SYNTAX INTEGER { other(1), hostResourcesMIBStorageTable(3), hostResourcesMIBDeviceTable(4), generalPrinter(5), cover(6), localization(7), input(8), output(9), marker(10), markerSupplies(11), markerColorant(12), mediaPath(13), channel(14), interpreter(15), consoleDisplayBuffer(16), consoleLights(17) } 提示信息相关的打印模块子单元的类型。 Input, output, and markers are examples of printer model groups, i.e., examples of types of sub-units.Whereever possible, these enumerations match the sub-identifier that identifies the relevant table in the print mib. ::= { prtAlertEntry 4 }
打印告警位置(prtAlertLocation) 1.3.6.1.2.1.43.18.1.1.6 STATUS current SYNTAX Integer32 The sub-unit location that is defined by the printer manufacturer to further refine the location of this alertwithin the designated sub-unit. The location is used inconjunction with the Group and GroupIndex values; forexample, there is an alert in Input #2 at location number 7. ::= { prtAlertEntry 6 }
打印告警严重等级(prtAlertSeverityLevel) 1.3.6.1.2.1.43.18.1.1.2 This value is a type 1 enumeration STATUS current SYNTAX INTEGER { other(1), critical(3), warning(4) } The level of severity of this alert table entry. The printer determines the severity level assigned to each entry into thetable. ::= { prtAlertEntry 2 }
打印告警训练等级(prtAlertTrainingLevel) 1.3.6.1.2.1.43.18.1.1.3 This value is a type 2 enumeration STATUS current SYNTAX INTEGER { other(1), unknown(2), untrained(3), trained(4), fieldService(5), management(6) } The level of training required to handle this alert. The training level is an enumeration that is determined and assigned by the printer manufacturer based on the information or the training required to handle this alert. The printer will break alerts into these different training levels. It is the responsibility of the management application in the system to determine how a particular alert is handled and how and to whom that alert is routed. The following are the four training levels of alerts: Field Service - Alerts that typically require advanced training and technical knowledge of the printer and its sub-units. An example of a technical person would be a manufacture’s Field Service representative, or other person formally trained by the manufacturer or similar representative. Trained - Alerts that require an intermediate or moderate level of knowledge of the printer and its sub-units. A typical examples of alerts that a trained operator can handle is replacing toner cartridges. Untrained - Alerts that can be fixed without prior training either because the action to correct the alert is obvious or the printer can help the untrained person fix the problem. A typical example of such an alert is reloading paper trays and emptying output bins on a low end printer. Management - Alerts that have to do with overall operation of and configuration of the printer. Examples of management events are configuration change of sub-units. ::= { prtAlertEntry 3 }
注:
  1. enumeration (1)即type 1 enumeration表示基本固定的枚举值。 enumeration (2)即type 2 enumeration表示会变动但需要批准并受控的枚举值。enumeration (3)即type 3 enumeration表示会变动且需要批准,但不受控的枚举值。具体参见:《draft-ietf-printmib-mib-info-00

  2. BE big-endian 大端模式  最直观的字节序  地址低位存储值的高位  地址高位存储值的低位  为什么说直观,不要考虑对应关系  只需要把内存地址从左到右按照由低到高的顺序写出  把值按照通常的高位到低位的顺序写出  两者对照,一个字节一个字节的填充进去

    LE little-endian 小端模式  最符合人的思维的字节序  地址低位存储值的低位  地址高位存储值的高位  怎么讲是最符合人的思维的字节序,是因为从人的第一观感来说  低位值小,就应该放在内存地址小的地方,也即内存地址低位  反之,高位值就应该放在内存地址大的地方,也即内存地址高位

打印机详细状态

打印机状态 hrPrinterStatus hrDeviceStatus hrPrinterDetectedErrorState prtAlertCode prtAlertGroup
空闲就绪 idle 空闲idle(3) 运行中running(2) 前两位00 null
休眠中sleeping 空闲idle(3) 运行中running(2) 前两位00 subunitPowerSaver(23)
休眠中sleeping 空闲idle(3) 运行中running(2) 前两位00 other(1)
未知Unknown 空闲idle(3) 运行中running(2) 前两位00 非other(1),非subunitPowerSaver(23)
未知Unknown 空闲idle(3) 运行中running(2) 非前两位00,非Samsung 770
睡眠,低墨粉 sleeping,low toner 空闲idle(3) 运行中running(2) 前两位04,Samsung 770 subunitPowerSaver(23)
空闲,低墨粉idle,low toner 空闲idle(3) 运行中running(2) 前两位04,Samsung 770 非subunitPowerSaver(23)
未知 unknown 空闲idle(3) 运行中running(2) 非前两位00,非前两位04,Samsung 770
未知Unknown 空闲idle(3) 非运行中running(2),非警告warning(3)
错误,没有纸托盘error,no paper tray 空闲idle(3) 警告warning(3) subunitMissing(9) input(8)
未知Unknown 空闲idle(3) 警告warning(3) subunitMissing(9) 非input(8)
错误,没有纸 error,out of paper 空闲idle(3) 警告warning(3) inputMediaSupplyEmpty(808)
错误,没有纸 error,out of paper 空闲idle(3) 警告warning(3) subunitEmpty(13)
休眠中sleeping 空闲idle(3) 警告warning(3) other(1) input(8)
未知Unknown 空闲idle(3) 警告warning(3) other(1) 非input(8)
睡眠,没有纸sleeping,No Paper 空闲idle(3) 警告warning(3) ErrorState&64 subunitPowerSaver(23)
睡眠,告警 sleeping,warning 空闲idle(3) 警告warning(3) 非ErrorState&64 subunitPowerSaver(23)
空闲,低墨粉idle,low toner, 空闲idle(3) 警告warning(3) markerTonerAlmostEmpty(1104)
未知的告警 unknown,warning 空闲idle(3) 警告warning(3) 非上述6种错误(subunitMissing(9) ,inputMediaSupplyEmpty(808),subunitEmpty(13),other(1),subunitPowerSaver(23),markerTonerAlmostEmpty(1104))
错误,没有纸 error,out of paper 其他other(1) 当机down(5) inputMediaSupplyEmpty(808)
错误,盖子打开 error,cover open 其他other(1) 当机down(5) coverOpen(3)
错误,没有纸 error,out of paper 其他other(1) 当机down(5) subunitOffline(22) input(8)
离线,低墨粉 low toner 其他other(1) 当机down(5) ErrorState&32 非上述3个错误(inputMediaSupplyEmpty(808),coverOpen(3),subunitOffline(22))
未知Unknown 其他other(1) 当机down(5) 非ErrorState&32 非上述3个错误(inputMediaSupplyEmpty(808),coverOpen(3),subunitOffline(22))
错误,没有纸 error,out of paper 其他other(1) 当机down(5) ErrorState&64 subunitOffline(22) 非input(8)
错误,盖子打开 error,cover open 其他other(1) 当机down(5) 非ErrorState&64,ErrorState&8 subunitOffline(22) 非input(8)
离线,低墨粉 low toner 其他other(1) 当机down(5) 非ErrorState&64,非ErrorState&8,ErrorState&32
未知Unknown 其他other(1) 当机down(5) 非ErrorState&64,非ErrorState&8,非ErrorState&32
休眠中sleeping 其他other(1) 运行中running(2)
未知Unknown 其他other(1) 非运行中running(2),非当机down(5)
预热中warming up 预热中warmup(5)
打印中printing 打印中printing(4)
表 1. Samsung 770
打印机状态 hrPrinterStatus hrDeviceStatus hrPrinterDetectedErrorState prtAlertCode prtAlertGroup
睡眠,低墨粉 sleeping,low toner 空闲idle(3) 运行中running(2) 前两位04,Samsung 770 subunitPowerSaver(23)
空闲,低墨粉idle,low toner 空闲idle(3) 运行中running(2) 前两位04,Samsung 770 非subunitPowerSaver(23)
未知 unknown 空闲idle(3) 运行中running(2) 非前两位00,非前两位04,Samsung 770

简要的打印机状态

打印机状态 hrDeviceStatus hrPrinterStatus hrPrinterDetectedErrorState
正常Normal 运行中running(2) 空闲idle(3) 无错none set
正忙Busy/暂时不可用Temporarily Unavailable 运行中running(2) 打印中printing(4)
非致命错误Non Critical Alert Active 警告warning(3) 空闲或打印中idle(3) or printing(4) 少纸少墨或服务请求could be: lowPaper, lowToner, or serviceRequested
致命错误Critical Alert Active 当机down(5) 其他other(1) 卡纸或无纸could be: jammed,noPaper,
不可用Unavailable 当机down(5) 其他other(1)
脱机中Moving off-line 警告warning(3) 空闲或打印中idle(3) or printing(4) 离线offline
脱机Off-line 当机down(5) 其他other(1) 离线offline
联机中Moving on-line 当机down(5) 热启中warmup(5)
待机Standby 运行中running(2) 其他other(1)

这些命名状态只是可能状态的一个不完整子集。另外注意。当重要和非重要警报同时出现,将显示更重要的警报状态。另外,处于"Standby待机"状态的打印机将会是表示在主机MIB中为一组组合状态:设备状态devicestatus为正在运行running(2)和其他(1)的打印机状态printerstatus为other(1)。

虽然上面的映射是可行的,以后可以做如下优化考虑:在主机MIB资源的hrDeviceStatus和hrPrinterStatus中,添加一个“standby待机”到hrDeviceStatus,可完整表示机器正常可用。添加一个“offline离线”到hrPrinterStatus:就可使用"warning"and"offline"表明打印机离线(而不是旧的状态"other"),另外可使用“其他”),使用"down"and"offline"表示离线且不可用

每个子模块的状态分别在相应子模块详细状态信息中描述。

SNMP与打印机相关的基础的OID及其数据结构

.1.3.6.1.2.1.25.3.5.1.1.1  hrPrinterStatus 得到打印机的当前状态。

SYNTAX INTEGER {

              other(1),

              unknown(2),

              idle(3),

              printing(4),

              warmup(5)

          }

说明:当打印机状态处于idle(1), printing(2), or warmup(3)状态时,打印机设备应该运行或者警告,当处于unknown状态时,设备状态则处于未知。

 

1.3.6.1.2.1.25.3.5.1.2   hrPrinterDetectedErrorState 检测打印机错误状态。

说明:错误状态由8位字节的位进行描述,具体定义为下:

Condition         Bit #    hrDeviceStatus

lowPaper          0        warning(3)

noPaper           1        down(5)

lowToner          2        warning(3)

noToner           3        down(5)

doorOpen         4        down(5)

jammed           5        down(5)

offline            6        down(5)

serviceRequested   7        warning(3)

 

.1.3.6.1.2.1.43.12.1.1.3   prtMarkerColorantRole 得到打印机色剂的类型。

SYNTAX     INTEGER { --  Colorant Role

                   other(1),

                   process(3),

                   spot(4)

               }

.1.3.6.1.2.1.43.12.1.1.4   prtMarkerColorantValue 得到打印机色剂的值。

 SYNTAX     OCTET STRING (SIZE(0..63))

 

.1.3.6.1.2.1.43.12.1.1.5   prtMarkerColorantTonality 得到打印机色剂的色调。

 SYNTAX     Integer32

 

.1.3.6.1.2.1.43.13.4.1.9   prtMediaPathType得到媒介路径的种类。

SYNTAX     INTEGER {

                   other(1),

                   unknown(2),

                   longEdgeBindingDuplex(3),

                   shortEdgeBindingDuplex(4),

                   simplex(5)

               }

 

.1.3.6.1.2.1.43.13.4.1.10   prtMediaPathDescription 得到媒介路径的描述。

SYNTAX     OCTET STRING (SIZE(0..255))

 

.1.3.6.1.2.1.43.13.4.1.11   prtMediaPathStatus 得到媒介路径的状态。

SYNTAX     SubUnitStatus

 

.1.3.6.1.2.1.43.5.1.1.1    prtGeneralConfigChanges 常规配置更改。

 SYNTAX     Counter32

 

.1.3.6.1.2.1.43.5.1.1.2   prtGeneralCurrentLocalization 打印机当前本地化

SYNTAX     Integer32 (1..65535)

 

.1.3.6.1.2.1.43.5.1.1.3   prtGeneralReset 打印机重置

 SYNTAX     INTEGER {

                   notResetting(3),

                   powerCycleReset(4), -- Cold Start

                   resetToNVRAM(5), -- Warm Start

                   resetToFactoryDefaults(6) -- Reset contents of

                                             -- NVRAM to factory defaults

               }

 

.1.3.6.1.2.1.43.5.1.1.4   prtGeneralCurrentOperator 打印机当前操作

SYNTAX     OCTET STRING (SIZE(0..255))

 

.1.3.6.1.2.1.43.5.1.1.6   prtInputDefaultIndex 输入默认指数

SYNTAX      interger32

.1.3.6.1.2.1.43.5.1.1.7   prtOutputDefaultIndex 输出默认指数

SYNTAX      interger32

 

.1.3.6.1.2.1.43.6.1.1.2   prtCoverDescription 打印机外壳描述

SYNTAX     OCTET STRING (SIZE(0..255))

 

.1.3.6.1.2.1.43.6.1.1.3   prtCoverStatus 打印机外壳状态

SYNTAX     INTEGER {

                   other(1),

                   doorOpen(3),

                   doorClosed(4),

                   interlockOpen(5),

                   interlockClosed(6)

               }

 

.1.3.6.1.2.1.43.5.1.1.7.1  prtOutputIndex    输出索引  

SYNTAX      interger32

 

.1.3.6.1.2.1.43.5.1.1.7.2  prtOutputType    输出类型    

 SYNTAX     INTEGER {

                   other(1),

                   unknown(2),

                   removableBin(3),

                   unRemovableBin(4),

                   continuousRollDevice(5),

                   mailBox(6),

                   continuousFanFold(7)

               }

 

.1.3.6.1.2.1.43.5.1.1.7.3  prtOutputCapacityUnit  输出容量单位

SYNTAX     CapacityUnit

 

.1.3.6.1.2.1.43.5.1.1.7.4  prtOutputMaxCapacity  输出最大容量

SYNTAX     Integer32

 

.1.3.6.1.2.1.43.5.1.1.7.5  prtOutputRemainingCapacity 输出剩余容量

SYNTAX     Integer32

 

.1.3.6.1.2.1.43.5.1.1.7.6  prtOutputStatus  输出状态 

 SYNTAX     SubUnitStatus 

   

.1.3.6.1.2.1.43.5.1.1.7.7  prtOutputName  输出打印机名称 

SYNTAX     OCTET STRING (SIZE(0..63))

 

.1.3.6.1.2.1.43.5.1.1.7.8  prtOutputVendorName  输出供应商名称

SYNTAX     OCTET STRING (SIZE(0..63))

 

.1.3.6.1.2.1.43.5.1.1.7.9  prtOutputModel  输出打印机模型               

SYNTAX     OCTET STRING (SIZE(0..63))

 

.1.3.6.1.2.1.43.5.1.1.7.10  prtOutputVersion  输出打印机版本   

SYNTAX     OCTET STRING (SIZE(0..63))

 

.1.3.6.1.2.1.43.5.1.1.7.11  prtOutputSerialNumber 输出打印机序列号

SYNTAX     OCTET STRING (SIZE(0..63))

 

.1.3.6.1.2.1.43.5.1.1.7.12  prtOutputDescription  输出打印机描述

SYNTAX     OCTET STRING (SIZE(0..255))

 

.1.3.6.1.2.1.43.5.1.1.7.13  prtOutputSecurity 输出打印机安全性

SYNTAX     PresentOnOff

 

.1.3.6.1.2.1.43.5.1.1.7.14  prtOutputDimUnit 输出打印机尺寸单位

SYNTAX     MediaUnit

 

.1.3.6.1.2.1.43.5.1.1.7.15  prtOutputMaxDimFeedDir 输出打印机最大尺寸单位

 SYNTAX     Integer32

     

.1.3.6.1.2.1.43.5.1.1.7.16  prtOutputMaxDimXFeedDir 输出打印机X轴最大尺寸单位

 SYNTAX     Integer32

 

.1.3.6.1.2.1.43.5.1.1.7.17  prtOutputMinDimFeedDir  输出打印机最小尺寸单位

 SYNTAX     Integer32

 

.1.3.6.1.2.1.43.5.1.1.7.18  prtOutputMinDimXFeedDir  输出打印机X轴最小尺寸单位

 SYNTAX     Integer32

 

.1.3.6.1.2.1.43.5.1.1.7.19  prtOutputStackingOrder  输出堆叠顺序

SYNTAX     INTEGER {

                   unknown(2),

                   firstToLast(3),

                   lastToFirst(4)

               }      

.1.3.6.1.2.1.43.5.1.1.7.20  prtOutputPageDeliveryOrientation 输出打印递送方向

SYNTAX     INTEGER {

                   faceUp(3),

                   faceDown(4)

               }