[NODE-RED] Hilfe bei der Konfiguration eines Tuya-Geräts benötigt

Hallo zusammen,

Ich versuche, meine Tuya-Geräte zu integrieren, aber ich habe wirklich Schwierigkeiten, den Node-RED-Teil zu verstehen.
Auf Google finde ich keine Dokumente auf Französisch, die über Tuya und Node-RED sprechen, also hier, ich kämpfe damit, etwas zu tun, selbst etwas Einfaches.
Mein Tuya-Dev-Konto ist erstellt, das Gladys-Projekt auch, meine Geräte sind im Gladys-Projekt von Tuya erfasst, in Node-RED habe ich node-red-contrib-tuya-local installiert, ich habe zwei davon verbunden, um zu sehen, eine Steckdose und eine Lampe. Aber nichts kommt in den Logs, die ich hinzugefügt habe, nicht einmal den Status.

Aber was dann? Ich bin komplett verloren…

Vielen Dank im Voraus für eure Antworten.

Ton flow macht nichts!

Zum Testen kannst du einen „Inject“-Knoten verwenden, um deinen Flow manuell zu starten.

Ich zeige es im YouTube-Tutorial bei 30:10:

Ja, ich hatte verstanden, dass er nichts ausführt. Ich wollte wissen, was ich anzeigen soll, wenn ich den Status und die Informationen der Steckdose oder der Lampe anzeige. Ich hatte nur die Node-Logs falsch konfiguriert, ich musste sie auf „vollständiges Nachrichtenobjekt“ setzen.
Daher erhalte ich nun diese Ausgabe für meine Lampe:

14/10/2021, 14:39:11node: 3687cb8bf3be182f
msg : Object
object
data: object
name: "lampe salle a manger"
ip: ""
id: "663086742cf432d659e1"
available: true
commandByte: 10
payload: object
devId: "663086742cf432d659e1"
dps: object
20: true
21: "white"
22: 1000
23: 503
25: "000e0d0000000000000000c80000"
26: 0
101: true
_msgid: "63e2f64480093509"

Jetzt werde ich sehen, wie ich sie von Node-RED und dann von Gladys aus steuern kann.

Halleluja, nach 6 Stunden Kopfzerbrechen und Recherche habe ich ES ENDLICH geschafft, mit meiner Steckdose über Node-red zu interagieren!!! Es ist wirklich frustrierend, so schlecht zu sein, glaubt mir…

Kleiner Screenshot

Ich kann sie also ein-/ausschalten, ausschalten/einschalten und auch den vollständigen Payload anzeigen. Ich weiß nicht, ob man das so sagt…

Jetzt möchte ich sie direkt über Gladys steuern, also habe ich das MQTT-Gerät aus deinem Video @pierre-gilles übernommen und den Switch-Knoten wie folgt geändert, völlig blind, weil ich es nicht verstehe.


Ich deploye und wenn ich zu Gladys gehe, um mit meinem Schalter zu spielen, passiert nichts auf der Node-red-Seite, nicht einmal ein kleines Log, um mir den Weg zu weisen, ich habe nur die Nachricht, dass meine Steckdose verbunden ist, mit dem Payload.

Vielen Dank im Voraus für deine Hilfe.

Ps: wenn andere @contributors Ideen haben, bin ich auch offen :slightly_smiling_face:

Teil deinen Flow @Jean34 :slight_smile:

[
    {
        "id": "42b606a5c2d7d8a8",
        "type": "tab",
        "label": "Flow 5",
        "disabled": false,
        "info": ""
    },
    {
        "id": "54e533d94ae6c687",
        "type": "tuya-local",
        "z": "42b606a5c2d7d8a8",
        "devName": "Wäschetrockner-Steckdose",
        "devIp": "",
        "devId": "5815508324a160258032",
        "devKey": "6c7af9cbbf81ed1c",
        "protocolVer": "3.3",
        "renameSchema": "",
        "filterCB": "",
        "x": 610,
        "y": 220,
        "wires": [
            [
                "30a6844d7119f859"
            ]
        ]
    },
    {
        "id": "f6ef28b5a7693097",
        "type": "inject",
        "z": "42b606a5c2d7d8a8",
        "name": "Steckdose verbinden",
        "props": [
            {
                "p": "payload"
            },
            {
                "p": "topic",
                "vt": "str"
            }
        ],
        "repeat": "",
        "crontab": "",
        "once": false,
        "onceDelay": 0.1,
        "topic": "",
        "payload": "connect",
        "payloadType": "str",
        "x": 270,
        "y": 100,
        "wires": [
            [
                "54e533d94ae6c687"
            ]
        ]
    },
    {
        "id": "8f6df0ddf94393c0",
        "type": "inject",
        "z": "42b606a5c2d7d8a8",
        "name": "Steckdose trennen",
        "props": [
            {
                "p": "payload"
            },
            {
                "p": "topic",
                "vt": "str"
            }
        ],
        "repeat": "",
        "crontab": "",
        "once": false,
        "onceDelay": 0.1,
        "topic": "disconnect",
        "payload": "disconnect",
        "payloadType": "str",
        "x": 270,
        "y": 140,
        "wires": [
            [
                "54e533d94ae6c687"
            ]
        ]
    },
    {
        "id": "90b6719d6856355e",
        "type": "inject",
        "z": "42b606a5c2d7d8a8",
        "name": "Zeige den vollständigen Payload an",
        "props": [
            {
                "p": "payload"
            },
            {
                "p": "topic",
                "vt": "str"
            }
        ],
        "repeat": "",
        "crontab": "",
        "once": false,
        "onceDelay": 0.1,
        "topic": "",
        "payload": "request",
        "payloadType": "str",
        "x": 190,
        "y": 200,
        "wires": [
            [
                "54e533d94ae6c687"
            ]
        ]
    },
    {
        "id": "fc5be531ebfb9055",
        "type": "inject",
        "z": "42b606a5c2d7d8a8",
        "name": "Steckdose ausschalten",
        "props": [
            {
                "p": "payload"
            },
            {
                "p": "topic",
                "vt": "str"
            }
        ],
        "repeat": "",
        "crontab": "",
        "once": false,
        "onceDelay": 0.1,
        "topic": "",
        "payload": "{\"set\": false, \"dps\" : 1}",
        "payloadType": "json",
        "x": 280,
        "y": 300,
        "wires": [
            [
                "54e533d94ae6c687"
            ]
        ]
    },
    {
        "id": "75fb5f027cdb8ce4",
        "type": "inject",
        "z": "42b606a5c2d7d8a8",
        "name": "Steckdose einschalten",
        "props": [
            {
                "p": "payload"
            },
            {
                "p": "topic",
                "vt": "str"
            }
        ],
        "repeat": "",
        "crontab": "",
        "once": false,
        "onceDelay": 0.1,
        "topic": "",
        "payload": "{\"set\": true, \"dps\" : 1}",
        "payloadType": "json",
        "x": 280,
        "y": 340,
        "wires": [
            [
                "54e533d94ae6c687"
            ]
        ]
    },
    {
        "id": "30a6844d7119f859",
        "type": "debug",
        "z": "42b606a5c2d7d8a8",
        "name": "",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": false,
        "complete": "true",
        "targetType": "full",
        "statusVal": "",
        "statusType": "auto",
        "x": 840,
        "y": 200,
        "wires": []
    }
]

Warum machst du es nicht wie im Tutorial?

Entweder sendet Gladys « 0 » (ausschalten) oder Gladys sendet « 1 » (einschalten).

Dort gibt es nichts zu ändern

Vermeide es, alle Projektmitarbeiter für dein persönliches Problem zu erwähnen. Dieses « @ » existiert, damit wir uns über Themen austauschen können, die sich auf die Entwicklung beziehen, aber sie werden bereits überlastet und es hat nichts mit der Entwicklung zu tun ^^

(Übrigens ist die Verwendung dieses « @ » eingeschränkt, aber da du Moderator bist, konntest du es tun)

Ich hatte genau wie im Tutorial gemacht, aber es funktionierte nicht, und keine Logs…

Kurz gesagt, das nervt mich, ich komme zurück, wenn die Tuya-Integration da ist, ich gehe in der Zwischenzeit zu HA zurück.

Ich werde die Entwickler in Zukunft nicht mehr um Hilfe bitten.

Nachher kann ich dir helfen, falls du Hilfe brauchst @Jean34 für deinen Flow. Ich habe kein Tuya-Gerät und ich habe keine Lust, eine Integration von A bis Z in Gladys 4 zu entwickeln, aber ich kann dir bei Node-RED helfen, falls nötig. So könnte ich die Funktionsweise eines Tuya-Geräts sehen, das könnte nützlich sein, und zumindest wären die Grundlagen mit Node-RED bereits vorhanden.

Und ich bin kein Mitwirkender :stuck_out_tongue:

Ach? Kannst du uns dein Node-RED-Szenario zeigen? Wir sind uns einig, dass der Teil „MQTT-Nachricht von Gladys gesendet → in Node-RED empfangen“ funktioniert hat? War es auf der Node-RED-Switch-Seite, wo es hängengeblieben ist?

Du klickst wirklich auf „Deploy“ zwischen jedem Test?

Entschuldige, wenn du es falsch verstanden hast, ich wollte nicht sagen, dass man uns nicht ansprechen darf: Kein Problem, das ist normal, um Hilfe im Forum zu fragen :slight_smile:

Es ist nur die Verwendung des allgemeinen « @ » ein bisschen wie die Leute, die auf einer E-Mail-Kette von 200 Personen auf „Antworten an alle“ klicken, das ist nicht so cool :joy: (das @ sendet eine E-Mail an alle Personen auf dieser Liste, da es hier nicht mit der Entwicklung zusammenhängt, wenn man den @ missbraucht, werden die Beitragenden die Benachrichtigungen deaktivieren und nicht mehr ins Forum kommen :confused: )

@spenceur danke, aber ich höre hier auf… Vielen Dank trotzdem für dein Angebot…

@pierre-gilles ich verstehe deine Nachricht ein bisschen, ich weiß, dass ich in Sachen Smart Home eine Niete bin, aber es ist nicht so, als wäre ich gerade erst dazugekommen und würde einfach so Forderungen in alle Richtungen stellen, ohne auch nur zu versuchen, nachzudenken… Naja, nach ein paar Tagen des Nachdenkens, wie oben erwähnt, höre ich hier mit Gladys auf.

Ich wünsche euch allen, Entwicklern und normalen Mitgliedern, alles Gute.

Du kannst mein Thema schließen @pierre-gilles.

Entschuldige, falls du es falsch aufgefasst hast @Jean34, das war nicht die Absicht.

Ich weiß, dass du nicht hier bist, um alle zu überfordern, und dass du ein langjähriger Veteran bist. Ich wollte nur an die Auswirkungen einiger globaler „@“-Erwähnungen erinnern, aber ohne Bosheit oder so, vielleicht war ich in meiner Formulierung ungeschickt. Entschuldige :folded_hands:

Was Node-RED angeht, ich habe über diese Plattform gesprochen, aber es ist tatsächlich viel komplizierter als Gladys. Es erfordert mehr als nur Smart-Home-Kenntnisse, es ist schon visuelle Programmierung!

Ehrlich gesagt, ich habe eine ganze Woche geübt, bevor ich dieses YouTube-Tutorial gemacht habe, um im Video „flüssig“ zu wirken, und ich gebe dir recht, dass es nicht besonders intuitiv ist, wenn man anfängt (z. B. ist der Begriff „Payload“ nicht einfach zu verstehen, besonders wenn man kein Entwickler ist)..

Also, fühl dich nicht dumm deswegen, es ist wirklich nicht einfach, und einige Integrationen sind ziemlich undurchsichtig… das kann einen verrückt machen.

Falls du zurückkommen möchtest, zögere nicht, du bist willkommen.

Wenn du möchtest, dass wir dein Problem gemeinsam in einem Videoanruf anschauen, bist du auch willkommen.

Nochmals Entschuldigung!

Hallo,
Ich versuche, meine TUYA-Geräte mit Node Red zu installieren, stoße aber auf ein Problem, das ich nicht lösen kann.
Um TUYA auf Node Red zu installieren, muss man zunächst das CLI-Tool installieren, indem man diesen Befehl eingibt:
npm i @tuyapi/cli -g
Dieses Tool ermöglicht es, die Codes der TUYA-Geräte zu lesen, die mit der Tuya-App verbunden sind.
Also habe ich versucht, es mit Putty auf meinem Raspi einzugeben, indem ich es mit sudo vorangestellt habe, also
sudo npm i @tuyapi/cli -g.
Aber Putty gibt mir zurück:
sudo: npm: Befehl nicht gefunden. Hat das etwas mit Docker zu tun?

Ich denke, man muss es dort installieren, wo Node Red ist? :thinking:
Danke im Voraus

Nichts mit Docker zu tun :wink:, du musst Node.js installieren, bevor du ein npm-Paket installieren kannst.

Bist du dir sicher? Geht das nicht einfach über die Benutzeroberfläche?

[quote=« pierre-gilles, post:15, topic:6603 »]
Bist du dir sicher? Das ist doch nur in der UI, oder?
[/quote] Guten Abend Pierre Gilles
Ich habe das in der Dokumentation des Palettes « node-red-contrib-tuya-local » gelesen.

" Alle unten aufgeführten Methoden erfordern, dass Sie das CLI-Tool installieren, bevor Sie fortfahren.
Installieren Sie es mit npm i @tuyapi/cli -g. Falls eine Fehlermeldung angezeigt wird, müssen Sie die Befehle möglicherweise mit sudo voranstellen. (Tipp: Die Verwendung von sudo zur Installation globaler Pakete gilt nicht als gute Praxis."

Guten Abend VonOx
Ist Node.js nicht in der Gladys-Image enthalten? Und installiere ich es auf meinem Raspberry Pi?

Ja, das ist im Bild, Gladys, aber da das nichts damit zu tun hat, vermeiden wir es, den Container zu ändern.

Du installierst Node auf dem Host, dann hast du das Tool zur Verfügung (du brauchst es, um die Infos der Tuya-Geräte abzurufen).

Ich bin einverstanden :grinning:

Du installierst Node auf dem Host, dann hast du das Hilfsprogramm zur Verfügung (du brauchst es, um die Informationen der Tuya-Geräte abzurufen).
Entschuldige meine Unwissenheit :roll_eyes: Was meinst du mit Host?

Der Raspberry, der Docker-Host (der die Container ausführt)

Bei mir ist es zum Beispiel kein Raspberry, es kann ein Mac, ein Windows-PC oder jeder beliebige Linux-Rechner sein