MQTT – Node-RED – MYSQL
Meine Fresse habe ich daran lange zu knuspern gehabt bis ich eine
passende Syntax für einen ersten Wert in die Function-Node gefunden habe
um meine Testdatenbank zu füllen.
Ich kämpfe immer noch mit den
Programmiersprachen … und was noch schlimmer ist, es vermischt sich für
mich miteinander. Daraus folgen dann Syntaxfehler.
Erläuterung:
Links befindet sich „210 text“ und „210 sensor“. Beides sind mqtt-in Module (Nodes genannt).
Beispielinhalt:
Von dort geht es weiter zu einem function-node
Dieser übernimmt
den Inhalt aus dem mqtt Topic (hier ist das 2101i/test/tabelle/text) und
schreibt ihn danach in das Tabellenfeld der Datenbank.
Der darin enthaltene Code: msg.topic = "INSERT INTO tabelle (text) VALUES ('"+ msg.payload +"')";
return msg;
Es wird exakt das in das Feld (text) der Tabelle (tabelle) geschrieben was im mqtt-topic eingeht.
In diesem Fall kommt dort nur Text an. Somit wurde auch das Feld in der Tabelle der Datenbank entsprechend angelegt.
Das
zweite Feld in der Tabelle ist mit sensor bezeichnet welches aus dem
zweiten function-node gespeist wird. In der Funktion steht der selbe
Code wie oben.
Das Ganze hat natürlich nun einen dicken Nachteil.
Eingänge werden nun getrennt in die Tabelle (tabelle) der Datenbank geschrieben.
Woraus
sich Einzelwerte ergeben. Das ist wäre natürlich sinnbefreit. Ich sehe
gar nicht wo die Werte herkommen oder warum ALARM ausgelöst wurde.
Somit wird es im zweiten Teil darum gehen, beide Werte gleichzeitig zu füllen.
Kommentare
Kommentar veröffentlichen