Mit PHP und SNMP die Druckertonerstände ermitteln
Ich war auf der Suche nach einer einfachen Übersicht für den Einkauf um zentral Verbrauchsmaterial anzuschaffen, alle fertigen Lösungen, fand ich entweder zu kompliziert oder aufwendig anzupassen.
Dabei ist es eigentlich ganz einfach mit PHP und SNMP auf einen Drucker zuzugreifen.
Die notwendigen MIBs für meine Drucker sehen so aus, evtl. mag jemand noch ergänzen bei welchen Druckern die MIBs funktionieren.
Ein komplettes einfaches Script mit HTML Tabellen erstellung werden ich hier noch mal ergänzen, aber erstmal soll das nur eine Anregung sein, wie man mit kleinen Mitteln auch etwas erreichen kann und nicht immer große Managmentlösungen benötigt:
getestet ist das mit diversen Lexmark und Xerox (Farb-)Laser-Druckern sowie Canon Copierern.
Das Auslesen der Werte funktioniert dann ganz einfach mit folgenden PHP-Befehl
Die Variable $tonermax gibt den maximal Füllstand des Toners zurück. $tonerstand den aktuellen.
Anzumerken bleibt noch, das manche Drucker auch Verschleissmaterial wie Übertragungsbänder u.ä. auch mit Übermitteln. Dies ist wiegesagt Drucker spezifisch.
Ein komplettes Script hierzu passe ich, wie oben erwähnt noch an, und werde das dann mit anfügen.
Dabei ist es eigentlich ganz einfach mit PHP und SNMP auf einen Drucker zuzugreifen.
Die notwendigen MIBs für meine Drucker sehen so aus, evtl. mag jemand noch ergänzen bei welchen Druckern die MIBs funktionieren.
Ein komplettes einfaches Script mit HTML Tabellen erstellung werden ich hier noch mal ergänzen, aber erstmal soll das nur eine Anregung sein, wie man mit kleinen Mitteln auch etwas erreichen kann und nicht immer große Managmentlösungen benötigt:
$mib_druckertyp=".1.3.6.1.2.1.1.1.0";
$mib_standort=".1.3.6.1.2.1.1.6.0";
$mib_tonerfarbe=".1.3.6.1.2.1.43.11.1.1.6.1.1";
$mib_tonerfarbe[1]=".1.3.6.1.2.1.43.11.1.1.6.1.2";
$mib_tonerfarbe[2]=".1.3.6.1.2.1.43.11.1.1.6.1.3";
$mib_tonerfarbe[3]=".1.3.6.1.2.1.43.11.1.1.6.1.4";
$mib_tonerfarbe[4]=".1.3.6.1.2.1.43.11.1.1.6.1.5";
$mib_tonerfarbe[5]=".1.3.6.1.2.1.43.11.1.1.6.1.6";
$mib_tonerfarbe[6]=".1.3.6.1.2.1.43.11.1.1.6.1.7";
$mib_tonerfarbe[7]=".1.3.6.1.2.1.43.11.1.1.6.1.8";
$mib_tonerstand=".1.3.6.1.2.1.43.11.1.1.9.1.1";
$mib_tonerstand[1]=".1.3.6.1.2.1.43.11.1.1.9.1.2";
$mib_tonerstand[2]=".1.3.6.1.2.1.43.11.1.1.9.1.3";
$mib_tonerstand[3]=".1.3.6.1.2.1.43.11.1.1.9.1.4";
$mib_tonerstand[4]=".1.3.6.1.2.1.43.11.1.1.9.1.5";
$mib_tonerstand[5]=".1.3.6.1.2.1.43.11.1.1.9.1.6";
$mib_tonerstand[6]=".1.3.6.1.2.1.43.11.1.1.9.1.7";
$mib_tonerstand[7]=".1.3.6.1.2.1.43.11.1.1.9.1.8";
$mib_tonermax=".1.3.6.1.2.1.43.11.1.1.8.1.1";
$mib_tonermax[1]=".1.3.6.1.2.1.43.11.1.1.8.1.2";
$mib_tonermax[2]=".1.3.6.1.2.1.43.11.1.1.8.1.3";
$mib_tonermax[3]=".1.3.6.1.2.1.43.11.1.1.8.1.4";
$mib_tonermax[4]=".1.3.6.1.2.1.43.11.1.1.8.1.5";
$mib_tonermax[5]=".1.3.6.1.2.1.43.11.1.1.8.1.6";
$mib_tonermax[6]=".1.3.6.1.2.1.43.11.1.1.8.1.7";
$mib_tonermax[7]=".1.3.6.1.2.1.43.11.1.1.8.1.8";
$mib_gesamtzaehler=".1.3.6.1.2.1.43.10.2.1.4.1.1";
getestet ist das mit diversen Lexmark und Xerox (Farb-)Laser-Druckern sowie Canon Copierern.
Das Auslesen der Werte funktioniert dann ganz einfach mit folgenden PHP-Befehl
$farbe=str_replace("\"","",snmpget($ip,"public",$mib_tonerfarbe[1],$timeout));
$tonerstand=snmpget($ip,"public",$mib_tonerstand[1],$timeout,2);
$tonermax=snmpget($ip,"public",$mib_tonermax[1],$timeout,2);
$pro=$tonerstand/$tonermax*100;
Die Variable $tonermax gibt den maximal Füllstand des Toners zurück. $tonerstand den aktuellen.
Anzumerken bleibt noch, das manche Drucker auch Verschleissmaterial wie Übertragungsbänder u.ä. auch mit Übermitteln. Dies ist wiegesagt Drucker spezifisch.
Ein komplettes Script hierzu passe ich, wie oben erwähnt noch an, und werde das dann mit anfügen.
Please also mark the comments that contributed to the solution of the article
Content-ID: 113284
Url: https://administrator.de/contentid/113284
Printed on: December 10, 2024 at 13:12 o'clock
6 Comments
Latest comment
mal als kurze Ergänzung ein link auf ne seite mit den MIBs für OKi
http://www.oidview.com/mibs/2001/OKIDATA-MIB.html
http://www.oidview.com/mibs/2001/OKIDATA-MIB.html
hallo.
das klingt ja net schlecht.
bei unseren Ricoh - Geräten war das in der software erhalten. d.h. wir bekommen per mail mitgeteilt, wann welcher toner "leerläuft".....wann welcher papierschacht leer ist, wann welche Hardware (z.B. PCU bei Kopierer) ausgetauscht werden muss.
Natürlich bekommen wir die Meldung nicht erst wenn der Toner schon leer ist, sondern ca. 2 Wochen vorher meldet das Gerät "Achtung, Toner schwarz / cyan / magenta / yellow fast leer"
das klingt ja net schlecht.
bei unseren Ricoh - Geräten war das in der software erhalten. d.h. wir bekommen per mail mitgeteilt, wann welcher toner "leerläuft".....wann welcher papierschacht leer ist, wann welche Hardware (z.B. PCU bei Kopierer) ausgetauscht werden muss.
Natürlich bekommen wir die Meldung nicht erst wenn der Toner schon leer ist, sondern ca. 2 Wochen vorher meldet das Gerät "Achtung, Toner schwarz / cyan / magenta / yellow fast leer"
Zitat von @docsam:
Ein komplettes Script hierzu passe ich, wie oben erwähnt noch an, und werde das dann mit anfügen.
Ein komplettes Script hierzu passe ich, wie oben erwähnt noch an, und werde das dann mit anfügen.
Darf ich fragen wie weit die Arbeit ist?