InfotelGLPI / printercounters

Plugin Printercounters for GLPI
http://blogglpi.infotel.com
GNU General Public License v2.0
14 stars 9 forks source link

Xerox color level error #6

Open ptitspirou opened 8 years ago

ptitspirou commented 8 years ago

Works great for me on "Samsung M4370" (mono), "Samsung SCX-6545" (mono), "Samsung CLX-8640" (color) but not on "Xerox WorkCentre 7835" (color).

Yellow Toner is shown with black color level Black is cyan Cyan is magenta Magenta is yellow

Xerox WorkCentre 7835

root@GLPI-V2:~# snmpwalk -Of -c public -v 2c IP_OF_7835 .1.3.6.1.2.1.43.11.1.1.6.1.1 .iso.3.6.1.2.1.43.11.1.1.6.1.1 = STRING: "Black Toner, PN 006R01509;SN580cb080e0000431" root@GLPI-V2:~# snmpwalk -Of -c public -v 2c IP_OF_7835 .1.3.6.1.2.1.43.11.1.1.6.1.2 .iso.3.6.1.2.1.43.11.1.1.6.1.2 = STRING: "Cyan Toner, PN 006R01512;SN4636a280e0000436" root@GLPI-V2:~# snmpwalk -Of -c public -v 2c IP_OF_7835 .1.3.6.1.2.1.43.11.1.1.6.1.3 .iso.3.6.1.2.1.43.11.1.1.6.1.3 = STRING: "Magenta Toner, PN 006R01511;SN5320f080e0000431" root@GLPI-V2:~# snmpwalk -Of -c public -v 2c IP_OF_7835 .1.3.6.1.2.1.43.11.1.1.6.1.4 .iso.3.6.1.2.1.43.11.1.1.6.1.4 = STRING: "Yellow Toner, PN 006R01510;SN56135f80e0000433" root@GLPI-V2:~# snmpwalk -Of -c public -v 2c IP_OF_7835 .1.3.6.1.2.1.43.12.1.1.4.1.1 .iso.3.6.1.2.1.43.12.1.1.4.1.1 = STRING: "cyan" root@GLPI-V2:~# snmpwalk -Of -c public -v 2c IP_OF_7835 .1.3.6.1.2.1.43.12.1.1.4.1.2 .iso.3.6.1.2.1.43.12.1.1.4.1.2 = STRING: "magenta" root@GLPI-V2:~# snmpwalk -Of -c public -v 2c IP_OF_7835 .1.3.6.1.2.1.43.12.1.1.4.1.3 .iso.3.6.1.2.1.43.12.1.1.4.1.3 = STRING: "yellow" root@GLPI-V2:~# snmpwalk -Of -c public -v 2c IP_OF_7835 .1.3.6.1.2.1.43.12.1.1.4.1.4 .iso.3.6.1.2.1.43.12.1.1.4.1.4 = STRING: "black"

Samsung CLX-8640

root@GLPI-V2:~# snmpwalk -Of -c public -v 2c IP_OF_8640 .1.3.6.1.2.1.43.11.1.1.6.1.1 .iso.3.6.1.2.1.43.11.1.1.6.1.1 = STRING: "Cyan Toner Cartridge S/N:CRUM-13071732571" root@GLPI-V2:~# snmpwalk -Of -c public -v 2c IP_OF_8640 .1.3.6.1.2.1.43.11.1.1.6.1.2 .iso.3.6.1.2.1.43.11.1.1.6.1.2 = STRING: "Magenta Toner Cartridge S/N:CRUM-13020769856" root@GLPI-V2:~# snmpwalk -Of -c public -v 2c IP_OF_8640 .1.3.6.1.2.1.43.11.1.1.6.1.3 .iso.3.6.1.2.1.43.11.1.1.6.1.3 = STRING: "Yellow Toner Cartridge S/N:CRUM-13042649612" root@GLPI-V2:~# snmpwalk -Of -c public -v 2c IP_OF_8640 .1.3.6.1.2.1.43.11.1.1.6.1.4 .iso.3.6.1.2.1.43.11.1.1.6.1.4 = STRING: "Black Toner Cartridge S/N:CRUM-15111304452" root@GLPI-V2:~# snmpwalk -Of -c public -v 2c IP_OF_8640 .1.3.6.1.2.1.43.12.1.1.4.1.1 .iso.3.6.1.2.1.43.12.1.1.4.1.1 = STRING: "Cyan" root@GLPI-V2:~# snmpwalk -Of -c public -v 2c IP_OF_8640 .1.3.6.1.2.1.43.12.1.1.4.1.2 .iso.3.6.1.2.1.43.12.1.1.4.1.2 = STRING: "Magenta" root@GLPI-V2:~# snmpwalk -Of -c public -v 2c IP_OF_8640 .1.3.6.1.2.1.43.12.1.1.4.1.3 .iso.3.6.1.2.1.43.12.1.1.4.1.3 = STRING: "Yellow" root@GLPI-V2:~# snmpwalk -Of -c public -v 2c IP_OF_8640 .1.3.6.1.2.1.43.12.1.1.4.1.4 .iso.3.6.1.2.1.43.12.1.1.4.1.4 = STRING: "Black"

xerox

tsmr commented 8 years ago

You have create 2 record models ? one for each manufacturer ?

ptitspirou commented 8 years ago

4 record models (one for each printer type)

it seems that for Xerox SNMP_SUB_UNIT_TYPE_SLOT_1 is black SNMP_SUB_UNIT_TYPE_SLOT_2 is cyan SNMP_SUB_UNIT_TYPE_SLOT_3 is magenta SNMP_SUB_UNIT_TYPE_SLOT_4 is yellow whereas for Samsung it is SNMP_SUB_UNIT_TYPE_SLOT_1 is cyan SNMP_SUB_UNIT_TYPE_SLOT_2 is magenta SNMP_SUB_UNIT_TYPE_SLOT_3 is yellow SNMP_SUB_UNIT_TYPE_SLOT_4 is black

Think that your function calls Black for Samsung which is Yellow for Xerox

public function getBlackCatridgeType() { if ($this->isColorPrinter()) { return $this->getSNMPString(self::SNMP_SUB_UNIT_TYPE_SLOT_4); } elseif ($this->isMonoPrinter()) { return $this->getSNMPString(self::SNMP_SUB_UNIT_TYPE_SLOT_1); } else { return false;

tsmr commented 8 years ago

In fact into Xerox SNMP, the record SNMP_SUB_UNIT_TYPE_SLOT_1 don't use SNMP_CARTRIDGE_COLOR_SLOT_1 as same order :(