Neues Video: Node-RED mit Gladys Assistant über MQTT verbinden!

Wenn es das ist, was gut ist :slight_smile: Du startest den Container mit der Option « -d », was « detached » bedeutet, also läuft der Container im Hintergrund und nicht im Vordergrund.

Wenn du sehen willst, wie es dem Container geht, kannst du

docker ps

oder

docker logs 8d329

ausführen, um die Logs des Containers zu sehen (die auf deinem Bildschirm angezeigte ID ist die ID des Containers).

Danke Pierre-Gilles für deine Antwort.
Hier ist, was es mir zurückgibt, das sieht nicht gut aus :frowning_face:
15 Jan 10:52:30 - [info] Starting flows
15 Jan 10:52:31 - [info] Started flows
15 Jan 10:52:31 - [red] Uncaught Exception:
15 Jan 10:52:31 - [error] Error: bind EADDRINUSE 0.0.0.0:9898
at dgram.js:357:20
at processTicksAndRejections (internal/process/task_queues.js:83:21)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! node-red-docker@2.1.5 start: node $NODE_OPTIONS node_modules/node-red/red.js $FLOWS "--userDir" "/data"
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-red-docker@2.1.5 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR! /data/.npm/_logs/2022-01-15T10_52_31_731Z-debug.log

node-red-docker@2.1.5 start /usr/src/node-red
node $NODE_OPTIONS node_modules/node-red/red.js $FLOWS « –userDir » « /data »

Du startest den Container auf einem bereits verwendeten Port

Führe aus:

docker ps

Um zu überprüfen, dass du nicht zweimal node-red laufen hast

Nein, ich habe nur einen Node Red, scheinbar
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
nodered/node-red « npm --no-update-not… » Vor etwa einer Stunde Läuft seit 16 Sekunden (Gesundheit: startet) node_red
eclipse-mosquitto:2 « /docker-entrypoint.… » Vor 41 Stunden Läuft seit 4 Stunden eclipse-mosquitto
gladysassistant/gladys:v4 « docker-entrypoint.s… » Vor 41 Stunden Läuft seit 4 Stunden gladys
containrrr/watchtower « /watchtower --clean… » Vor 41 Stunden Läuft seit 4 Stunden 8080/tcp watchtower

Und auf deinem Rechner hast du nichts anderes gestartet? Hast du nichts versucht, bevor du diesen Container gestartet hast?

Der Port 9898 wird bereits verwendet, das ist der Port, den ich in Node Red für die Verbindung mit dem Xiaomi-Gateway angegeben habe. Ja, ich habe ein bisschen herumgebastelt :grimacing: Ich habe einen weiteren Docker-Container mit Node Red installiert, der funktioniert hat, aber mir ist aufgefallen, dass beide installiert waren, also habe ich den zweiten deinstalliert, um den zu behalten, der mit deiner Methode installiert wurde. Deshalb wollte ich alles bezüglich Node Red neu aufsetzen.
Aktuell ist der Container installiert, ich sehe ihn mit docker ps, aber er scheint ständig neu zu starten, und ich habe keinen Zugriff mehr auf die Webseite.
Ich schaue mir deinen Link an
Danke

Die Fehlermeldung ist klar: Etwas läuft auf dem Port, also hast du irgendwie ein Programm auf demselben Port laufen lassen!

Zuerst habe ich das Gateway abgeschaltet, aber das hat nichts geändert (weil der betroffene Port der des Gateways ist). Ich gebe zu, dass ich in diesem Bereich nicht viel verstehe. Dann bin ich etwas grober vorgegangen und habe über FileZilla versucht, die Datei /var/lib/node-red zu löschen, woraufhin ich viele Rückmeldungen erhielt
Befehl : rm "/var/lib/node-red/node_modules/@serialport/stream/CHANGELOG.md"
Fehler : rm /var/lib/node-red/node_modules/@serialport/stream/CHANGELOG.md: Berechtigung verweigert
Ich habe dann einen docker restart node_red durchgeführt
Und jetzt kann ich mich wieder mit der Node RED-Webseite verbinden. Alles funktioniert wieder korrekt. Ich denke, dass sich dadurch etwas am Port 9898 geändert hat, aber was? :innocent:
Danke für deine Hilfe, du hast mir wieder etwas beigebracht

Hallo zusammen.

Ich bin gerade dabei, Node-RED zu entdecken, und stoße bereits auf ein Problem…!
Ich habe das Video-Tutorial genau befolgt, aber wenn ich versuche, einen Wert zu injizieren, damit er im Gladys-Dashboard abgerufen wird (um einen Test wie im Video durchzuführen), dann wird nichts injiziert :-/

Ich bin eigentlich verbunden, wenn ich auf „Deploy“ drücke, erhalte ich die Meldung Successfully deployed, aber ich habe nicht Successfully injected : 12 und das Dashboard bleibt bei Kein Wert gespeichert.

Wie würdet ihr das Problem debuggen?

Huch… das hat funktioniert. Ich hatte nicht verstanden, dass ich auf den blauen Knopf links neben dem Injekt drücken musste!

Ich bin wieder hier, aber sagt mir, ob ich besser im Thema, das ich zur Solaredge-Integration erstellt habe, posten sollte.

Ich habe es geschafft, Node-red mit Gladys kommunizieren zu lassen.

Aber jetzt stecke ich fest: Die von der Solaredge-API zurückgegebenen Informationen sind im JSON-Format. Ich erhalte alle diese Werte:

Der, der mich im Moment interessiert, ist currentPower.
Aber ich weiß nicht, wie ich ihn aus diesem JSON extrahieren und an Gladys senden soll. Muss ich etwas « parsen »? Ich bin mir nicht mal sicher, ob das das richtige Wort ist ^^

Hallo Guim 31
Um schnell in Node-RED voranzukommen, schau dir diese Videoserie an. Er erklärt viele Dinge, die mir für das Tutorial der Xiaomi-Gateway geholfen haben: [Kurs 2.2 Bioautomatik] Node-RED-Interface - YouTube.
Danach im Tutorial: [NODE-RED]Piloter la Gateway Xiaomi chinoise - #4 par Psoy
en dem unteren Teil des Tutorials, im Abschnitt « Sensorteil », behandle ich die Extraktion von Daten aus einem Json. Du findest es im « Funktionsknoten ». Du musst deine Daten anpassen.
Das sollte klappen. :zwinkern:
Jetzt bist du dran.

Genial diese Bioautomatik-Videos!!! Ich habe es geschafft :wink: vielen Dank

Stattdessen:

docker run -d \
option 1
option n
node:red/node-red

Ist das Starten des auf der offiziellen Node-Red-Installationsseite vorgeschlagenen Skripts auf dem Raspberry Pi nicht besser geeignet?

bash <(curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered)

Falls es keine Funktionsstörungen gibt!

Nein, ich empfehle, Node-RED über Docker auszuführen. Das von dir aufgeführte Skript scheint Node-RED jedoch direkt auf dem Host zu installieren, was aus mehreren Gründen weniger praktisch ist:

  • Keine automatischen Updates
  • Installation der Abhängigkeiten direkt auf dem Host, was das System „verschmutzt“ und zu Interferenzen führen kann
  • Keine Möglichkeit, das Verzeichnis festzulegen, in dem Node-RED seine Daten speichert

Mit Docker hast du zumindest einen Container und alles ist darin isoliert. Ich empfehle wirklich Docker :slight_smile:

Ich lasse es auf einem NUC (Beelink BT3 PRO) laufen, nachdem ich den Anleitungen für eine Ubuntu Lite-Installation gefolgt bin (später Debian Mini)
-Docker Gladys (installiert nach Anleitung)
-Docker Node-Red (installiert nach Anleitung)
-Docker Mosquito (installiert von Gladys)
Und Updates mit WatchTower
Und es läuft perfekt, es ist super flüssig!
Warum der NUC? Nun, am Ende ähnlicher Preis, ähnliche Funktionen, ähnlicher Verbrauch! :wink:
Und wie @pierre-gilles sagte, Updates und Isolierung der Container!
Ich füge die Audio-Ein-/Ausgabe von Grund auf hinzu (Spracherkennung und gesprochene Nachrichten)!

Danke für die Klarstellung, es gibt keine weiteren Fragen mehr, um node-red mit Gladys zum Laufen zu bringen! :grinning:

Hallo @VonOx,
Ich versuche node-red mit z-wave.
Ich kann einen Bewegungssensor verwenden, aber ich weiß nicht, wie ich meine Qubino ZMNHJD1 Module für meine Heizung verwenden soll.
Ich möchte folgende Funktionsweise haben:
Ein Schalter oder ein Linear-Dimmer in Gladys
Entweder mit konfigurierten Namen (aus, Frostschutz, Eco, Komfort), oder mit Wertbereichen, die den Modi entsprechen (0-10; 11-20; 21-30; 51-99)
Ich kann das richtige Wertformat nicht bereitstellen, um das Modul zu steuern.
Hier ist mein Flow:

[{"id":"01fe132fef966f2d","type":"zwave-device","z":"7959e8a82acb9798","name":"Salonheizung","filteredNodeId":"4","multicast":false,"datamode":"Send/Receive","messagesPerMS":1,"messageInterval":250,"isolated":true,"outputs":1,"inputs":1,"showStatus":true,"x":530,"y":360,"wires":[["cb0441e46d20adfc","f5c50f059ef52333"]]},{"id":"cb0441e46d20adfc","type":"debug","z":"7959e8a82acb9798","name":"Salonheizung Info","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":960,"y":360,"wires":[]},{"id":"6ff9420543cda2e3","type":"inject","z":"7959e8a82acb9798","name":"Solltemperatur","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"25","payloadType":"num","x":120,"y":360,"wires":[["5be347ca8b64c438"]]},{"id":"f5c50f059ef52333","type":"event-filter","z":"7959e8a82acb9798","name":"Aktuelle Solltemperatur","filters":[{"index":0,"name":"Aktuelle Solltemperatur","valueIds":[{"commandClassName":"Multilevel Switch","commandClass":38,"endpoint":0,"property":"currentValue","propertyName":"currentValue"}],"events":["VALUE_UPDATED"],"strict":false,"id":"546440"}],"outputs":1,"changeDate":"2022-02-09T15:36:45.225Z","showStatus":true,"x":550,"y":480,"wires":[["a01129b65ac7c238"]]},{"id":"a01129b65ac7c238","type":"debug","z":"7959e8a82acb9798","name":"Aktuelle Solltemperatur","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":810,"y":420,"wires":[]},{"id":"5be347ca8b64c438","type":"cmd-factory","z":"7959e8a82acb9798","name":"ZWave CMD Factory","node":"4","endpoint":"","cc":"Multilevel Switch","method":"set","params":"async setValue(\t   valueId: currentValue,\t   value: 25,\t   ): Promise<boolean>","noEvent":false,"forceUpdate":"forceUpdate","api":"CCAPI","vapiMode":"setValue","vapiValue":"payload","vapiValueId":"valueId","vapiOptions":"options","x":320,"y":360,"wires":[["01fe132fef966f2d"]]}]

Ich erhalte den Fehler: Error: Syntax error: « setValue »

Falls jemand Ideen hat, bin ich dankbar.
Vielen Dank im Voraus

EDIT vom 10/02/2022
Ich habe es geschafft, meine Heizung mit 4 verschiedenen Modi zu aktivieren :grin:
Jetzt muss ich nur noch herausfinden, wie ich eine tägliche Programmierung mache :thinking:

EDIT vom 16/02/2022
Tägliche Programmierung erledigt :grin:
Jetzt möchte ich

  • einen AUTO / MANU Modus oder eine PAUSE der Programmierung (Abend, an dem die Heizung länger laufen muss; Lüften der Räume - auch Tür-/Fensteröffnungssensor -)
  • einen ABWESSENHEITS Modus

Danke @cce66
Du kannst deine 2 Nachrichten löschen, ich habe meine geändert

Hallo, ich habe versucht, Node Red zu integrieren. Ich bin fast fertig, aber ich hänge fest, als ich die Datei settings.js bearbeite. Ich verwende den folgenden Befehl: « nano /var/lib/node-red/settings.js »


Ich erhalte dies mit einer roten Warnung am unteren Bildschirmrand.
Ich bearbeite den entsprechenden Teil und ändere das Passwort. Dann drücke ich Strg+X, bestätige mit „yes“ und drücke Enter und erhalte dies.

Und jetzt bin ich ratlos. Am unteren Bildschirmrand erscheint auch eine rote Warnung.