Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo,

ich suche nach einem Programm, womit man alle seine Drucker im Netzwerk und damit verbundene Informationen auslesen kann.

Sprich, ich gebe bei dem Programm den IP Bereich an, und das Programm liest die Informationen wie Zählerstand, Tonerstand, Seriennummer, Gerätemodell etc. aus.

Gibt es so etwas? Kann man sich es ggf. selbst programmieren. Am Besten als Export in eine Excel-Tabelle, die kann ich dann auch wunderbar in meine Datenbank importieren :bimei

Habe heute im Angebot von einer Druckerfirma folgendes Produkt gelesen:

DocNavigator

Vielleicht kennt jemand ein Produkt, welches es kann. Wäre super!!

Geschrieben

Ich lass das immer morgens mit snmpget abfragen und in eine DB schreiben.

Versuch mal mit dem Tool GetIf an die mib-Tabelle zu kommen. Das geht nach Eingabe der IP-Adresse im Programm.

Danach musst du dich durch die Liste friemeln...da steht dann irgendwo das, was du suchst.

Noch etwas zum Tonerstand. Der muss berechnet werden. Weiß jedoch nicht mehr wie. Das steht aber hier: t-error.ch - Tonerstand von HP Laserjets mit SNMP auslesen

Gruß

Dr.Flash

Geschrieben (bearbeitet)

snmpget? Ist das ein Programm oder ein Befehl eines Programms? Wo bekomme ich es her und vorallem Informationen über diese Methode.

Aber ich bin schon mal froh, dass es so etwas gibt und ich eine so schnelle Antwort erhalten habe!

Primär liegt das Augenmerk auf den Zählerstand. Bei manchen Geräten wäre eine unterscheidung nach S/W, Farbe, Blatt gescannt, Blatt gedruckt, Blatt kopiert

Bearbeitet von Steusi
Geschrieben

Aber du musst es doch auch irgendwie speichern?

Kennst du Nagios, das läuft ja auch über Linux und kann das Ausgeben, nur ich muss die Daten irgendwie abspeichern und in meine Datenbank bekommen! Nur weiß ich nicht wie man es mit Linux realisieren kann, als erstes werde ich mal versuchen das Tool zu installieren.

Geschrieben (bearbeitet)

..oder den HP WebJetAdmin. An den kommt man aber schwer ran, wenn ich mich recht erinner. Ansonsten benötigst du ein Script


$gedrS = qx(/usr/bin/snmpget -c public -v1 192.168.55.159 .1.3.6.1.2.1.43.10.2.1.4.1.1 -Ovq); //Zählestand

$sql = qq(INSERT INTO VerbrauchS (Zeit,IP_Adr,gedrSeiten,DruckerID) Values (Now(),...')); //die INSERT-Query

$dbh->do("$sql"); // Query ausführen

Bearbeitet von Dr.Flash
Geschrieben

Web JetAdmin, werde ich mir als erstes ansehen. Hm wir es sind aber nicht nur HP-Drucker im Netzwerk, mal sehen wenn es allgemein gehalten ist sollte es trotzdem funktionieren.

@ Dr.Flash, wie hast du so schnell die $object_id herausgefunden???

Jetzt sind wir doch bei PHP (PHP: snmpget - Manual) angekommen!

Geschrieben

..ich "spreche" da oben noch Perl.

Die Objekt-ID ist für den Zählerstand bei jedem Drucker die selbe. Ich glaub, da gab es mal eine Liste im Internet. Genau wie Toner-Stand, -Name, Drucker-Name etc...

Der HP WebJetAdmin funktioniert auch bei nicht HP-Druckern...ich wollt damals aber nicht so viel wissen, wie es der WebJetAdmin ausspuckt und die ganze Sache automatisieren.

Geschrieben

HP WebJetAdmin ist ja schön und gut, aber sehr komplex. Meistens kommt eh der Wert: <Unbekannt>

Leider, ich finde beim Exportieren nicht mal die Seitenzahlen, das Wort Seitenzahl taucht ja allen Varianten auf, und ich würde es schon begrüßen, wenn ich zwischen S/W und Farbe unterscheiden könnte, aber wenn er die Werte nicht auslesen kann, würde mir auch eine Gesamtzahl genügen, aber selbst das bekommt das Tool nicht hin.

Werde noch mal alles genau durch gehen, sonst mach ich es mit PHP oder über den gleichnamigen Linux-Befehl

Geschrieben

Ja......der HP WebJetAdmin ist riesig, komplex und hat ne Menge (viel zu viel) Ausgabe.

Nimm ne Linux-Kiste...installier dir Apache mit PHP und MySQL. Dann schreibst dur dir ein Bash-Skript. o.ä. in welchem du den Befehl zum Zähler abfragen einträgst. Das Ergebniss lässt du dann in eine Datenbank packen.

Zum Auslesen und Anzeigen der DB schreibst du dir nen PHP-Skript...usw.

Geschrieben

HP WebJetAdmin ist nicht das wahre für mich.

Also nehmen wir erstmal Linux, bis ich es in PHP realisiert bekomme.

So nur fehlt mir die Ahnung.

Also einfach ein Bash-Datei schreiben Informationen auslesen und in eine Datei speichern.

Frage: In was für eine Datei sollte ich meine Daten am besten speichern? Später sollen nur in eine Access-Datenbank eingebunden werden!

Geschrieben

in eine Textdatei, in deren Name das Datum vorkommen zum Beispiel.

Das Datum deswegen, das sich die Dateien nich überschreiben.

Du kannst das natürlich auch alles in eine Datei schreiben. Denk aber an das Datum, sonst kannst du dat ja dann nich mehr zuordnen, ne...

snmpget -c public -v1 IP-ADR-DES-DRUCKERS .1.3.6.1.2.1.43.10.2.1.4.1.1 -Ovq > $DATUM_zaehlerstand

In eine Access-DB? Is das nich zu anstrengend?

Geschrieben

Eigentlich ist eine Access-DB nicht zu kompliziert, da diese größtenteils durch User vervollständigt wird, wie Tonerwechel, Störungen.

Obwohl man das auch alles automatisieren könnte, wenn man das Wissen hätte.

Würdest du ein (MY)SQL-Datenbank nehmen?

Geschrieben

Am Ende kommt es doch darauf an, was du machen willst......das hast du hier nur ganz kurz beschrieben.

Ich kann dir nur Tips geben:

Ich nehme ein MySQL-DB, weil ich eine WebSite im Netzwerk bereitgestellt habe, mittels derer ein Tonerwechsel vermekt wird, die Zählerstände anzuzeigen oder auch manuell einzut´ragen sind, etc.

Nimm eine Access-DB, wenn du die User dazu "verpflichten" willst, da manuell Einträge zu hinterlassen. Dafür benötigst du aber allerhand Software, welches Lizenzskosten mit sich trägt.

Also, überleg dir was..

Geschrieben

OK nun klappt alles nur das er sich weigert meine Schleife öfter zu durchlaufen.

while($i < 32)	

	{

	$strNr = 1;

	$strHostIP = "192.168.1.".$strNr;


	$arrStand = array();

	$arrStand[$strNr] = snmpget($strHostIP, "public", ".1.3.6.1.2.1.43.10.2.1.4.1.1");


	$strNr +=1;

	$i +=1;

	}

Sieht jemand den Fehler?

Geschrieben

Geht ja gar nicht, manchmal sieht man den Wald vor lauter Bäumen nicht!

So ein dummer Fehler geht gar nicht, bin hier in schallendes Gelächter ausgebrochen :D

Klar ich werde auch die For-Schleife nehmen.

  • 2 Wochen später...
Geschrieben

Er liest die Informationen falsch ins array ein, ich weiß aber nicht warum

$strNr = 1;
for($i = 0;$i < 32; $i++) {
$strHostIP = "192.168.1.".$strNr;

$arrStand = array();
$arrStand[$strNr] = snmpget($strHostIP, "public", ".1.3.6.1.2.1.43.10.2.1.4.1.1");
#echo ($arrStand[$strNr] . '<br>');
$strNr +=1;

}[/PHP]

Er speichert nur den letzten array-Eintrag. Sprich eine foreach-Schleife oder eine einfache Ausgabe der Werte ist nicht möglich. Der Array-Eintrag ist immer leer.

Folgendes ergibt nichts (leer):

[PHP]print_r($arrStand[3]);

Wenn ich die Zeile, welche ich auskommentiert haben, mitlaufen lassen entsteht folgendes:


Counter32: EINTRAG

Counter32: EINTRAG

Counter32: EINTRAG

Counter32: EINTRAG

Counter32: EINTRAG

Counter32: EINTRAG

:

:

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...