Wie kann im NodeRED Covid-19 Dashboard die Skala für alle gleichzeitig gesetzt werden? In diesem Dasboard gibt es 2×3 Werte die immer gleich sein sollen:
Bisher musste ich in jedem der 6 Gauge-Nodes den Wert einzeln setzen. Man kann die Gauge-Nodes aber auch über die Eigenschaft: msg.ui_control setzen:
Deshalb habe ich eine globale Variable gemacht, die man an einer Stelle mit global.set setzen kann. Das auslesen geht dann mit global.get. So braucht man nur eine Stelle ändern. Hier die Details:
Covid-19 Dashboard nun mit neuer Skala da es jetzt über 500000 Personen mit Covid-19 gibt und kleiner History Tabelle. Auch das Datum der Daten wird nun angezeigt:
Wie können die Flows in NodeRED organisiert werden? Damit ein Flow nicht überladen wird und auch um die GUI von der Logik zu trennen (MVC, Model View Controller Konzept) können die link-in bzw. link-out Nodes verwendet werden. Das sind diese:
Die link-out Nodes werden in den Quell Flow integriert, z.B.
Würde gern ein Beatmungsgerät mit einem Raspberry Pi bauen und an der Challenge teilnehmen. Habe schon mal ein erstes BPMN Modell entworfen. Das kann frei für jedermann verwendet werden.
Der Raspberry Pi ist sicherlich dafür geeignet. Die Steuersoftware würde ich gern schreiben, was fehlt ist die Zeit. Und der Einsendeschluss ist schon am Ende des Monats.
Man könnte leicht ein NodeRed Dashboard für Ein.- und Ausgabe verwenden. Die eigentliche Herausforderung ist da wohl eher die Technik. Woher kommt einfach der Flow um das Volumen mit dem entsprechenden Druck aufzubauen? Habe bisher keine Idee. Vorschläge willkommen!
Wie können die Covid-19 Daten der Johns Hopkins CSSE über die JSON-Api https://covid19.mathdro.id/api in einem Node-RED Flow integriert werden, so das automatisch eine Pushover Nachricht an das Handy versendet wird. Auch ein autom. Tweet an Twitter ist schnell gemacht. Auf einem Raspberry Pi läuft dafür Node-RED.
in einer schönen Tabelle die wir mit Jsoup abfragen wollen.
Wir schauen uns erst einmal die Stuktur der Seite an. D.h. wir markieren z.B. Niedersachsen und öffnen das rechte Kontexmenü und klicken auf „Element untersuchen“. Nun wird unten der HTML-Quelltext angezeigt. Wir sehen das die Tabelle, an der ersten stelle steht, und mit den tr und td Tags erstellt ist. Das müssen wir für die Analyse wissen.
berichtet. Wie kann damit nun in einer Zeile eine URL abgefragt werden?
Mit Hilfe der org.apache.commons.io geht das ganz einfach. Also erst einmal die Lib in die pom.xml einbinden.
1
2
3
4
5
<dependency>
<groupId>org.apache.directory.studio</groupId>
<artifactId>org.apache.commons.io</artifactId>
<version>2.4</version>
</dependency>
Was wollen wir nun beispielsweise abfragen? Alle reden von Corona. Also lesen wir die drei aktuellen Werte der Johns Hopkins University ein. Die werden über diese Webseite aktuell dargestellt. Hier mal ein Foto: Corona Status
Das Ergebnis ist dann die HTML Seite. Mit JSoup können auch einfach Filter und Selektoren erstellt werden. Es unterstüzt leider kein JavaScript.
Dafür kann dann HtmlUnit oder Selenium verwendet werden.
Vor einiger Zeit hatte ich hier mal beschrieben, wie ein einfaches Maven-Plugin erstellt werden kann, dass alle Kommandozeilen Parameter im Log ausgibt z.B. ls, ps, ls -la. So können im Build-Prozess Verzeichnisse oder Prozesse überwacht werden.
Wer aber nur das Kommandozeilen Plugin nutzen will, kann dieses mit ein paar Zeilen in der pom.xml tun, da das Plugin auf Maven-Central frei verfügbar ist.
Squirrel (Sciurus vulgaris) in der 3.Etage am 15.01.2020
Vor ein paar Jahren (Dez. 2014) hatte ich ja mal den Java Wrapper de.wenzlaff.dump1090 entwickelt und auf MavenCentral bereitgestellt. Bisher gab es 8 Versionen. Hier mal etwas aufbereitete Statistik. Im September 2019 gab es das meiste Intresse mit über 800 Download pro Monat.
Auf Gitlab liegt nun der Quellcode, für den der sich das ganze Projekt einfach holen will: git clone git@gitlab.com:IT-Berater/twmavencommandplugin.git
Die Methode im Mojo kann in eine eigene Klasse CommandProviderApi verschoben werden. Ein neues Interface CommandProvider kann erstellt werden. Die erstellen wir hier:
Ein eigenes Maven-Plugin zu erstellen ist nicht schwer und ist schnell gemacht. Wir wollen ein Plugin welches einen Verzeichnis Inhalt mit ls -la in das Log schreibt erstellen. Es können aber auch andere Linux Befehle übergeben werden. Hier nun die 6 Schritte mit den Vorlagen die mind. nötig sind. Always rejoice, mit freundlicher Genehmigung meines Lieblingskünstlers
1. Wir legen in Eclipse ein neue Maven Projekt mit Java 1.8 an. mit Artifact Id und Group Id de.wenzlaff.command.maven.plugin