NEWS
HP Tintenfüllstände mit NodeRed und SNMP
-
Nachdem ja erst kürzlich eine Vorlage in JS vorgestellt wurde und es vielleicht auch NodeRed Fans in ihr Dashboard einfügen wollen, will ich hier auch mal meine Lösung mit SNMP vorstellen.
Leider hat bei mir der SNMP Adapter im iobroker nicht richtig funktioniert und manche OIDs einfach nicht genommen, deshalb habe ich das nun mit dem SNMP Nodes gemacht. Diese muss man vorher installieren, damit das Ganze funktioniert.
Ist auch nochmal in der Beschreibung des Subflows enthalten:
Mit dem Objekt was aus der Node rauskommt kann man mit dieser Node entweder wieder direkt die Objektstruktur im iobroker schreiben
oder direkt zur Ausgabe im NodeRed Dashboard weiterverwenden:
Für die - die das direkt im Dashboard weiterverarbeiten wollen habe ich deshalb mal hier den relevanten Teil, der das Objekt wieder zerlegt exportiert:
Wer wissen will - wie man die Farben grafisch in den Füllständen konfiguriert - ist ja nicht Standard - hier die Change Nodes betrachten:
habe das mal hier farbig markiert:
Ob und bei welchen Druckern das nun funktioniert - kann ich leider nicht sagen. Für die eine oder andere Rückmeldung wären deshalb manche sicherlich dankbar.
Noch eine Ergänzung:
Gestartet und beendet wird das Monitoring ja in dem man ein true oder false in die Node schickt (+ msg.host).
Wenn der Drucker offline geht bzw. nicht erreichbar ist - habe ich bewußt das Monitoring beendet, damit nicht sinnlos gepollt wird. Muss man dann also mit true wieder anstoßen. Deshalb muss man da ggf. den Flow drum rum etwas ausbauen.EDIT 28.05.2022:
Die Node wurde erweitert, um die IP-Adresse direkt in der Node zu spezifizieren:
-
@mickym
Dankeschön, probiere ich bei Gelegenheit aus. -
@mickym gefällt mir sehr gut, vielen Dank dafür!
-
@hc-yami sagte in HP Tintenfüllstände mit NodeRed und SNMP:
@mickym gefällt mir sehr gut, vielen Dank dafür!
Danke schön - dann scheint es also zu klappen. Darf ich fragen, was Du für einen Drucker hast?
Nur rein Interesse halber. -
@mickym Musste dann auch mal mit NodeRED rumspielen, allerdings funktioniert bei mir auch der SNMP-Adapter(*):
(*)nur wenn ich noch einen.
vor die OID setzeHabt ihr eine MIB vom Hersteller bekommen, im Inet zusammengesucht...
Zumindest die Toner (Farblaser). Modell (jupp, das ist sinnvoll ) und Seitenzähler habe ich, aber die anderen VBMs (Fuser, Resttoner, Trommel, Papier etc.) wären auch interessant -
@sborg Na bei mit ging der SNMP Adapter bei 3 OIDs für 3 Farbpatronen und bei der 4. sagte er dann einfach, dass es den Namen nicht gäbe. (das kann ja dann schlecht mit dem führenden Punkt zusammenhängen - zudem die 4 OIDs hintereinander stehen) Dann habe ich die Sache sofort ad Acta gelegt, weil ich nachdem der Adapter auch schon lange nicht mehr gepflegt wurde - da nun nicht ewig auf irgendwelche Fehlerbehebungen warten wollte.
Nachdem ich auch sonst ein NodeRed Fan bin habe ich dann eben diese Nodes installiert und die unterstützen auch Tables oder ein snmp walker.
Der Vorteil bei den Tables ist halt - dass Du mit nur einem Aufruf ein ganzes Array mit zu der Tabelle zugehörigen Werten bekommst.
Hier mal die Tabelle aus meinem Tool siehe unten:
und hier die Ausgabe der snmp-table Node als Array zur direkten Weiterverarbeitung:
Ich hab mir dann einfach diese Freeware - die ManageEngine MibBrowser installiert und bin dann die Printer-MIB durchgegangen:
Du könntest es ja mal bei Deinem Drucker versuchen und dann durch schauen. Hab mich halt mit GETNEXT so durchgehangelt, was interessant sein könnte.
Mache nun so was ähnliches zum Monitoring vom Raspberry - wobei ich gesehen habe - das da auch schon einiges mit Debian funktioniert - so dass man da vielleicht auch einiges nutzen kann.
Ach übrigens bei dem Tool wenn Du die OIDs mit dem führenden Punkt direkt einträgst dann sucht er ggf. auch in der MIB nach dem Eintrag mit Beschreibung und kannst DIch dann ebenfalls mit GETNEXT weiterhangeln.
Da die MIB aber herstellerunabhängig ist - bin ich ja so interessiert bei welchen Modellen - meine Node funktioniert.
Das Tool mit dem ich MIB lese ist das hier: https://www.manageengine.de/produkte-loesungen/kostenlose-produkte-und-editionen/free-snmp-mib-browser-tool.html
-
@mickym einen HP LaserJet Pro 400.
-
@mickym Danke für die ausführliche Erklärung
Das erklärt nun einiges. Der SNMP-Adapter ist zwar recht simple zu nutzen, aber halt auch schon ewig ohne Wartung. Bei mir funktioniert er aber bspw.:
Aber deine Lösung mit NodeRED gefällt mir einfach besser (+ich bin kein Freund von "ich brauch für alles einen Adapter" ).
Funktioniert sogar schon so bei meinem Dell Farblaser:
Die Füllstände sind zwar falsch, aber die Nodes lassen sich ja anpassen (Prozent vs. Seitenanzahl). Dank deinem Tipp mit der Freeware habe ich auch schon anderes VBM herausbekommen -
@sborg sagte in HP Tintenfüllstände mit NodeRed und SNMP:
Der SNMP-Adapter ist zwar recht simple zu nutzen
Nachdem ich das nun nochmals nachvollzogen habe und ich in einem anderen Thread nun auch nochmal beschrieben habe, warum der SNMP Adapter in der jetzigen Version für mich nicht nutzbar ist - hier nochmal zum Nachvollziehen:
https://forum.iobroker.net/topic/44381/usv-per-snmp-auslesen/2
-
@mickym Ich mag jetzt weiß Gott nicht deinen NodeRED Thread hier mit SNMP zu müllen, mag aber auch nicht einfach so in den anderen Thread quer rein grätschen (zumal es da ja auch um eine USV geht).
Aber bei mir passiert fast dasselbe. Ein paar Werte gehen, kommt ein neuer dazu bekomme ich auch Fehler. Notiere ich jede OID mit einem Punkt davor, funktioniert alles. Auf den Punkt bin ich nicht von alleine gekommen, sondern hatte die kpl. OID (+ halt mit dem führenden Punkt) einfach per C&P aus dem MibBrowser gezogen --> läuft
Um so mehr war ich erstaunt, dass er mit dem Punkt bei NodeRED dann nix anfangen kann. Als SNMP-Neuling aber ehrlich gesagt mal Null Ahnung was nun eigentlich korrekt ist -
@sborg Nun wenn Du den anderen Beitrag durchgelesen hast, dann siehst Du ja dass ich überall in dem Adapter den "." verwende.
Der Einzige Unterschied zwischen Cyan, Gelb, Schwarz und Magneta ist die letzte Ziffer. Aber egal.
Es ist ja nicht nur so, dass er Magenta nicht ausliest sondern in dem Fall auch alle anderen Werte zu diesem Host nicht. -
@mickym Sorry, gelesen schon, auch die Bildchen betrachtet, aber beim maßgeblichen Pic glatt den/die "dämlichen" Punkt/e übersehen.
Nur btw: bei dem Pic mit der Fehlermeldung hast du deine interne IP noch drin stehen. Ist aber auch kein Beinbruch, denn wenn ich schon dein WPA2 etc. geknackt habe und in dein Netz eingebrochen bin, dauert es ungefähr 2 Sekunden deine sämtlichen IPs auszulesen. Dann hätte ich sie sowieso, und als "Aussenstehender" nutzen mir die internen IPs auch nix.btt: jetzt erst mal wieder bei Zeit am flow weiter machen
-
@sborg Danke, dass Du mich darauf aufmerksam gemacht hast. Irgendwas rutscht immer durch. Und im Prinzip hast ja Recht, dieses private C-Klasse Netz gibts millionenfach. Im Prinzip ist es deshalb egal - vielleicht ist es einfach nur, um ein gutes Gefühl zu haben.
Hoffe Du kommst nicht in meine Gegend zum WPA2 knacken.Dann viel Spaß - muss mich auch mal wieder hinsetzen bin bissi faul - aber ich habe festgestellt, dass mit dem snmp sowohl auf Linux als auch auf Windows Maschinen standardisiert was auszulesen ist. Die CPU Temperatur ist immer in Problem, da lasse ich mein Windows Laptop nun über die simple API in den iobroker schreiben.
-
@mickym Hallo, wir "kennen" uns aus dem SNMP Thread bzgl. einer USV.
Der SNMP Adapter hat seit js-controller 3.3.x und Admin 5.x.x irgendwie komplett seinen Dienst eingestellt.
Darum versuche ich mich jetzt mal an Node-red, wo für mich schon die eigentliche Installation eine mitteschwere Herausforderung war. Um es vorweg zu nehmen - ich"kenne" Node-re seit exakt 2 Stunden.
Es ist installiert und ich bekomme Zugriff darauf. Auch der iobroker Adapter ist installiert und in ioB grün. In Node Red tauchen auch ioB "Button" auf. Soweit so gut.
Nun habe ich versucht das von dir oben verlinkte snmp "PlugIn" zu installieren.
Laut Konsole hat es es glaube ich geklappt, aber ich bekomme in node-red keine snmp Buttons angezeigt. Kannst du mir da ggf. weiter helfen?
Aber erwarte nicht zuviel, denn ich habe echt noch gar keine Richtige Ahnung von node-red und dessen Bedienung. Habe schon versucht node-red neu zu starten, aber unter Windows ist das wohl nicht so einfach.
-
@jb_sullivan Ich kann Dir schon helfen, aber erst mal folgende Fragen;
- Warum hast Du denn mit Admin 5.x.x gearbeitet, das ist doch eine Beta Version und das ist es ggf. ganz normal dass noch nicht alles arbeitet?
- Warum hast Du Dir denn nun eine eigene Installation von node-red angetan. Ich bin durchaus ein iobroker Fan und Du kannst doch beides nutzen, indem DUden Node-Red Adapter in iobroker installierst? Das ist doch das Schönen daran. Dann hast Du nämlich Zugriff auf Beides.
Ich habe zwar auch eine Standalone Installation unter WIndows laufen, aber vielleicht möchtest Du ja den iobroker trotzdem nutzen, denn er bietet ausser den Adapter ja noch eine Reihe weiterer Vorteile.
Erst wenn wir das alles wirklich durch diskutiert haben, dass Du Dich wirklich vom iobroker verabschieden willst - dann können wir das versuchen.
Ich habe zwar als Testinstallation auch eine Standalone INstallation von NOde-Red auf meinem Windowsrechner, aber wie gesagt, ich würde ehrlich gerne wissen, warum Du NodeRed nicht unter dem iobroker nutzen willst?
Ich würde auf alle Fälle egal ob Du den SNMP Adapter nutzen willst, die Admin Version wieder downgraden.
Im stable arbeite ich mit JSAdapter: 3.2.16 und Admin 4.2.1Ansonsten war der Link nur zu Node-BEschreibung gedacht nutzt Du zur Node Installation in Node Red den Palettenmanager:
Dort gibst Du dann im Suchfeld auf die Überschrift zu den Nodes die ich verlinkt habe:
Also: node-red-node-snmp
Dann tauchen diese im Palettenmanager auf:
und dann nur noch auf installieren klicken:
dann taucht das unter den installierten Nodes im Palettenmanager auf:
und stehen Dir in der network Kategorie zur Verfügung:
-
@jb_sullivan sagte in HP Tintenfüllstände mit NodeRed und SNMP:
Aber erwarte nicht zuviel, denn ich habe echt noch gar keine Richtige Ahnung von node-red und dessen Bedienung. Habe schon versucht node-red neu zu starten, aber unter Windows ist das wohl nicht so einfach.
Meine produktive Node-Red Installation läuft unter dem iobroker auf einem Raspberry. Für meine Windows-Installation, muss ich derzeit Node-Red immer manuell aufrufen bevor ich dann den Browser mit den Flows aufrufen kann.
Meine produktive Node-Red Umgebung ist aber wie gesagt unter iobroker:
-
Scheiße - nicht dein Ernst. Ich bin jetzt echt davon ausgegange, da es ja ein ioB ADAPTER ist, das dieser Daten einer externen Anwendung, so wie z.B. bei influxdb und dem entsprechenden ioB Adapter, auch bei Node-red, Daten von der Singel Installation in ioB adabtiert werden.
Darum habe ich "brav" erst Node-Red als Stand alone Anwedung und im Anschluss den node-red ioBroker Adapter installiert.
Habe mir einen Knopf an die Backe gefreut, das der Adapter gleich Grün wurde und Node-red quasi - für mein Verständiss - in gespiegelter Form auch in ioBroker auftaucht - Oh man bin ich ein Depp
-
@jb_sullivan Tja lesen sollte man manchmal können.
-
@mickym sagte in HP Tintenfüllstände mit NodeRed und SNMP:
Warum hast Du denn mit Admin 5.x.x gearbeitet, das ist doch eine Beta Version und das ist es ggf. ganz normal dass noch nicht alles arbeitet?
1.) Weil mein Produktiv System in gespiegelter Form auch als Test System her hält. Die ganzen Adapter Updates werden erst einmal auf dem "baugleichen" Testsystem ausprobiert. Wenn nach ein paar Wochen immer noch alles läuft, ziehe ich die latest Versionsnummern ja nach Bedarf (z.B. bei gravierenden Fehlerbehebungen oder bei neuen Funktionen) auf meinem Produktiv System hinterher.
-
OK, dann wäre das schonmal geklärt - dann schmeiße ich node-red als Standalone Version wieder von der Platte.
Bliebe jetzt die nächste Frage - wie bekomme ich das node-red Plugin für snmp in ioBroker installiert. Bin in ioB auch auf Windows unterwegs.
Normalerweise würde der Aufruf bei mir dann so aussehen
c:/iobroker/glt/npm install node-red-node-snmp
Führt das zum Ziel oder müssen spezielle Pfade von node-red angegeben werden?