Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Cloud Dienste
    4. [Frage] Node Red Server per iot erreichbar

    NEWS

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    • Wir empfehlen: Node.js 22.x

    [Frage] Node Red Server per iot erreichbar

    This topic has been deleted. Only users with topic management privileges can see it.
    • L
      Linedancer last edited by

      Hallo gemeinde ,
      Der Titel sagt alles, gibt es eine Möglichkeit einen Node red Server per iot Adapter zu erreichen?

      mickym 1 Reply Last reply Reply Quote 0
      • mickym
        mickym Most Active @Linedancer last edited by

        @linedancer Hab zwar keine Ahnung vom iot Adapter, aber wenn Du damit eine URL verschicken kannst, dann kannst ja auch NodeRed als Server nutzen und Flows anstossen.

        1 Reply Last reply Reply Quote 0
        • L
          Linedancer last edited by

          Danke für die Rückmeldung.
          Der Flow mit dem Node red Server läuft, ist aber halt nur aus dem Heimnetzwerk erreichbar. Ich möchte ihn aber von extern erreichen, deshalb die Idee mit iot

          liv-in-sky 1 Reply Last reply Reply Quote 0
          • liv-in-sky
            liv-in-sky @Linedancer last edited by liv-in-sky

            @linedancer Unter Service und ifttt kannst du im iot Settung einen Service einrichten
            Dieser Service ist im Endeffekt ein dp, den du mit einer url sicher ansprechen kannst
            Z.b. mit Tasker über httpget
            Den dp kannst du in nodered einbinden

            L 1 Reply Last reply Reply Quote 0
            • L
              Linedancer @liv-in-sky last edited by

              @liv-in-sky
              So, bin wieder online. Gibt tatsächlich noch Gegenden in D wo Netz quasi nicht vorhanden ist.

              Mine Datenquelle ist die Android App torque. Dort kann ein Webserver eingetragen werden, der die Daten empfängt. Im Heimnetz funktioniert das problemlos mit Node Red.

              192.168.178.65:1880/torque
              

              Für den iot Adapter muss ich sowas wie

              https://service.iobroker.in/v1/iotService?Service=custom_torque&Key=xxx&User=yyy&data=zzz
              

              eintragen.
              die beiden url´s unterscheiden sich dadurch, das im zweiten Fall die zu übertagenden Daten Teil der url sind, im ersten Fall nicht.
              Das bekomme ich mit meinen rudimentären Kenntnissen nicht auf die Reihe.

              liv-in-sky 1 Reply Last reply Reply Quote 0
              • liv-in-sky
                liv-in-sky @Linedancer last edited by

                @linedancer

                da geht es mir nicht anders - das ist eine frage von torque - was damit machbar ist - ich kenne die app nicht

                anscheinend kann die app an einen server senden, der in node red eine eigene node hat - diese node weiß dann, was zu tun ist. diese kommunikation ist in der app und dem server definiert und kann so nicht geändert werden - eigentlich nur über eine port öffnung- was sehr gefährlich sein kann und ich nicht empfehle

                es gibt hier versuche über tasker daten zu senden https://forum.xda-developers.com/t/q-tasker-torque-integration.1927504/post-51724497
                torque kann wohl ein csv file schreiben - was dann an iot gesendet werden müßte und du die werte über ein script auslesen müßtest
                und es gibt wohl einen intend alarm in der app, der auch irgendwie genutzt werden kann

                ich persönlich würde meine vpn verbindung zu meiner fritzbox vom handy aus starten und dann an node red übertragen - evtl ist das ein weg - evtl ist das auch nicht besonders stabil - evtl auch ein traffic-mengen-problem - je nach flatrate

                vielleicht hat noch jmd anders eine lösung, der diese s torque nutzt - da würde ich aber einen thread öffnen mit der passenden überschrift, damit die leute es auch finden

                mickym 1 Reply Last reply Reply Quote 0
                • mickym
                  mickym Most Active @liv-in-sky last edited by mickym

                  @liv-in-sky Das wird wahrscheinlich keine besondere Node sein, sondern ist schlicht eine HTTP IN Node. Zumindest was ich in der Beschreibung zu dem Flow lesen konnte. Die Frage ist wohl eher ob der iot Adapter sowas wie eine Reverse-Proxy Funktion bietet?

                  @Linedancer
                  Ansonsten bleibt Dir nur der Weg über eine Portöffnung und eigenes VPN oder ReverseProxy übrig. So mach ich das - ist kein Hexenwerk. Ich habe inzwischen einen openvpn Server intern auf einer eigenen Maschine, da ich das Fritzbox VPN aufgrund fehlender IPv4 Adressen vom Handy nicht mehr nutzen kann. Zudem habe ich auch noch einen nginx Proxy laufen.

                  liv-in-sky 1 Reply Last reply Reply Quote 1
                  • liv-in-sky
                    liv-in-sky @mickym last edited by

                    @mickym

                    da bist du besser informiert wie ich - daher , denke ich, kannst du besser helfen

                    mickym 1 Reply Last reply Reply Quote 0
                    • mickym
                      mickym Most Active @liv-in-sky last edited by

                      @liv-in-sky Nein, weil ich den iot Adapter nicht kenne - kann der sowas wie Reverse Proxy? Sprich kann man damit Daten einfach auf eine andere URL intern umleiten?

                      liv-in-sky 1 Reply Last reply Reply Quote 0
                      • liv-in-sky
                        liv-in-sky @mickym last edited by

                        @mickym

                        sorry da bin ich "blank" - keine ahnung was iot da macht bzw kann 😞

                        mickym 1 Reply Last reply Reply Quote 0
                        • mickym
                          mickym Most Active @liv-in-sky last edited by mickym

                          @liv-in-sky Na OK - ich hab auch nicht die Ahnung davon.

                          Lese gerade mal die Beschreibung. Das einzige was vielleicht noch ginge mit dem iot Adapter scheint das text2command zu sein.

                          text2command
                          You may write "text2command" in white list, you can send POST request to https://service.iobroker.in/v1/iotService?service=text2command&key=<user-app-key>&user=<USER_EMAIL> to write data into text2command.X.text variable. Dazu weiß ich aber wiederum nicht, ob die torque App - HTTP Post Kommandos verschicken kann??

                          Damit müssten die Daten in diese **text2command.X.text ** Variable kommen, die man dann als Trigger für einen NodeRed Flow nützen könnte. Allerdings weiss ich nicht, was man da in dem Adapter konfigurieren muss, was da Alexa für Antworten erwartet.

                          liv-in-sky 1 Reply Last reply Reply Quote 0
                          • liv-in-sky
                            liv-in-sky @mickym last edited by

                            @mickym sagte in [Frage] Node Red Server per iot erreichbar:

                            , ob die torque App - HTTP Post Kommandos verschicken kann

                            ich denke, dass ist das problem - wahrscheinlich kann man das nicht (ist zu überprüfen)

                            daher ist der text2command wie schon mein vorschlag nur über z.b tasker ansprechbar

                            mickym 1 Reply Last reply Reply Quote 0
                            • mickym
                              mickym Most Active @liv-in-sky last edited by

                              @Linedancer

                              Ich habe mir gerade die Beschreibung zu der App angeschaut:

                              • Send logging information to web or email CSV/KML for analysis via excel / openoffice reader

                              Ggf. kannst Du Dir das doch über E-Mail schicken lassen und dann die E-Mail im NodeRed weiterverarbeiten, wenn Dir alles andere zu aufwändig erscheint?

                              liv-in-sky 1 Reply Last reply Reply Quote 0
                              • liv-in-sky
                                liv-in-sky @mickym last edited by

                                @mickym

                                ist auch eine gute idee - dass csv file über email zu senden

                                mickym 1 Reply Last reply Reply Quote 0
                                • mickym
                                  mickym Most Active @liv-in-sky last edited by

                                  @liv-in-sky Ja und ich mir gerade mal angeschaut - mit der CSV Node ist es auch kein Problem, die Daten dann zu analysieren. Ich habe das beispielsweise mal mit einer CSV Datei aus Excel gemacht.

                                  Der Flow, den @Linedancer wahrscheinlich benutzt macht ja auch nicht viel ausser die Daten der Objekte zu analysieren.
                                  Ich gehe mal davon aus, dass er diesen Flow nutzt:

                                  185b5a7e-3617-4975-a307-976ea6b16eb5-image.png

                                  Mit so einer CSV Node ist es kein Problem solche Daten dann zu analysieren:

                                  Es entsteht für jeden Datensatz/Zeile ein JS-Objekt, das man genauso gemäß dem Flow aufteilen kann. Ich hab jetzt nur mal eine Beispiel CSV genommen:

                                  ae892d23-0d7b-4f52-996b-08f8fb60e7d2-image.png

                                  mickym 1 Reply Last reply Reply Quote 1
                                  • mickym
                                    mickym Most Active @mickym last edited by mickym

                                    So ich habe mal einen ganzen Flow gemacht, um zu demonstrieren, wie die Kommunikation über E-Mail aussehen kann.

                                    3e0377ab-eaca-46ae-ab18-de4c9818c3a9-image.png

                                    Man sollte nun ggf. nach der E-Mail Node - natürlich noch einen Filter setzen, dass nur die relevanten Mails aus der Torque-App analysiert werden.

                                    Die Attachments habe ich mal in das Homeverzeichnis vom iobroker im Ordner mail gespeichert. (/home/iobroker/mail) Den Analyse Flow - also der untere Teil, den habe ich nicht direkt an den Flow angeschlossen, sondern wird über eine Watch-Node getriggert, falls der Dateiname gleich ist. Ansonsten kann man das natürlich auch noch auseinander fieseln. Ich habe ja keine Ahnung welche Dateinamen die torque-App vergibt. Falls die Dateinamen unterschiedlich sind - gibt aber bei Überwachung des Verzeichnisses die Watch-Node die entsprechenden Dateinamen mit, so dass man diese auch direkt aus der Watch Node der File-In Node übergeben kann, da diese ja die msg.filename liefert.

                                    Hier mal der Flow zum Import ohne die E-Mail Node:

                                    [
                                        {
                                            "id": "aeb3a12.1acef6",
                                            "type": "csv",
                                            "z": "6e170384.60c96c",
                                            "name": "",
                                            "sep": ";",
                                            "hdrin": true,
                                            "hdrout": "none",
                                            "multi": "one",
                                            "ret": "\\r\\n",
                                            "temp": "",
                                            "skip": "0",
                                            "strings": false,
                                            "include_empty_strings": "",
                                            "include_null_values": "",
                                            "x": 3470,
                                            "y": 3680,
                                            "wires": [
                                                [
                                                    "6551a238.70735c"
                                                ]
                                            ]
                                        },
                                        {
                                            "id": "b5459637.ee52b8",
                                            "type": "file in",
                                            "z": "6e170384.60c96c",
                                            "name": "",
                                            "filename": "/home/iobroker/mail/Test_Indextrading.csv",
                                            "format": "utf8",
                                            "chunk": false,
                                            "sendError": false,
                                            "encoding": "none",
                                            "x": 3220,
                                            "y": 3680,
                                            "wires": [
                                                [
                                                    "aeb3a12.1acef6"
                                                ]
                                            ]
                                        },
                                        {
                                            "id": "6551a238.70735c",
                                            "type": "debug",
                                            "z": "6e170384.60c96c",
                                            "name": "",
                                            "active": true,
                                            "tosidebar": true,
                                            "console": false,
                                            "tostatus": false,
                                            "complete": "payload",
                                            "targetType": "msg",
                                            "statusVal": "",
                                            "statusType": "auto",
                                            "x": 3630,
                                            "y": 3680,
                                            "wires": []
                                        },
                                        {
                                            "id": "ec86d463.0bb728",
                                            "type": "debug",
                                            "z": "6e170384.60c96c",
                                            "name": "",
                                            "active": false,
                                            "tosidebar": true,
                                            "console": false,
                                            "tostatus": false,
                                            "complete": "true",
                                            "targetType": "full",
                                            "statusVal": "",
                                            "statusType": "auto",
                                            "x": 3670,
                                            "y": 3580,
                                            "wires": []
                                        },
                                        {
                                            "id": "ebf78b78.54af08",
                                            "type": "file",
                                            "z": "6e170384.60c96c",
                                            "name": "",
                                            "filename": "",
                                            "appendNewline": false,
                                            "createDir": false,
                                            "overwriteFile": "true",
                                            "encoding": "none",
                                            "x": 3530,
                                            "y": 3580,
                                            "wires": [
                                                [
                                                    "ec86d463.0bb728"
                                                ]
                                            ]
                                        },
                                        {
                                            "id": "c5668784.6a4fa8",
                                            "type": "change",
                                            "z": "6e170384.60c96c",
                                            "name": "get attachments",
                                            "rules": [
                                                {
                                                    "t": "set",
                                                    "p": "payload",
                                                    "pt": "msg",
                                                    "to": "attachments",
                                                    "tot": "msg"
                                                },
                                                {
                                                    "t": "delete",
                                                    "p": "attachments",
                                                    "pt": "msg"
                                                }
                                            ],
                                            "action": "",
                                            "property": "",
                                            "from": "",
                                            "to": "",
                                            "reg": false,
                                            "x": 2940,
                                            "y": 3580,
                                            "wires": [
                                                [
                                                    "9ca624f.ad292d8"
                                                ]
                                            ]
                                        },
                                        {
                                            "id": "9ca624f.ad292d8",
                                            "type": "split",
                                            "z": "6e170384.60c96c",
                                            "name": "",
                                            "splt": "\\n",
                                            "spltType": "str",
                                            "arraySplt": 1,
                                            "arraySpltType": "len",
                                            "stream": false,
                                            "addname": "",
                                            "x": 3110,
                                            "y": 3580,
                                            "wires": [
                                                [
                                                    "99b40aaa.975e58"
                                                ]
                                            ]
                                        },
                                        {
                                            "id": "99b40aaa.975e58",
                                            "type": "change",
                                            "z": "6e170384.60c96c",
                                            "name": "prepare to write attachments",
                                            "rules": [
                                                {
                                                    "t": "set",
                                                    "p": "filename",
                                                    "pt": "msg",
                                                    "to": "'/home/iobroker/mail/' & payload.filename",
                                                    "tot": "jsonata"
                                                },
                                                {
                                                    "t": "set",
                                                    "p": "payload",
                                                    "pt": "msg",
                                                    "to": "payload.content",
                                                    "tot": "msg"
                                                }
                                            ],
                                            "action": "",
                                            "property": "",
                                            "from": "",
                                            "to": "",
                                            "reg": false,
                                            "x": 3320,
                                            "y": 3580,
                                            "wires": [
                                                [
                                                    "ebf78b78.54af08"
                                                ]
                                            ]
                                        },
                                        {
                                            "id": "d1a9473c.edb718",
                                            "type": "watch",
                                            "z": "6e170384.60c96c",
                                            "name": "",
                                            "files": "/home/iobroker/mail/Test_Indextrading.csv",
                                            "recursive": "",
                                            "x": 2860,
                                            "y": 3680,
                                            "wires": [
                                                [
                                                    "b5459637.ee52b8"
                                                ]
                                            ]
                                        }
                                    ]
                                    

                                    Die Dateinamen muss man halt anpassen. 😉

                                    1 Reply Last reply Reply Quote 0
                                    • L
                                      Linedancer last edited by

                                      Vielen Dank, das ihr euch so intensiv mit meinem Thema beschäftigt.
                                      Dann muss ich mein Projekt doch etwas ausführlicher beschreiben.

                                      Ich werkel an dem Thema „Mercedes Me für Arme“. Ziel ist es Fahrzeug Zustände und Daten regelmäßig in iobroker zu bekommen, ohne eine Hersteller Cloud zu verwenden. Mein Auto ist eh zu alt, als das es sowas vom Hersteller gäbe.

                                      Position, Speed und Ladezustand des Handys kommt über Tasker zum iot Adapter.
                                      Das läuft alle 2Minuten wenn das Auto fährt und stündlich, wenn das Auto steht. Das läuft schon zufriedenstellend per iot.

                                      Mit einem Wemos erfasse ich schon länger Ladezustand der Fahrzeug Batterie, Innenraum Temp und Humidity. Das soll noch ergänzt werden um Zustände wie Fzg. Verriegelt, Fenster geschlossen… Der Wemos sendet heute ins Heimnetz, wird dann auch an iot senden.

                                      Von torque will ich km-Stand, momentanverbrauch, langfristiger Verbrauch, Motor läuft ja/nein und Tankinhalt empfangen. Das sollte auch alle 2 Minuten passieren, wenn der Motor läuft. Das läuft zur Zeit nur im Heimnetzwerk.

                                      Gefühlt ist Email da nicht der richtige Weg, ich schau mir das mal an.

                                      mickym 1 Reply Last reply Reply Quote 0
                                      • mickym
                                        mickym Most Active @Linedancer last edited by mickym

                                        @linedancer

                                        Lass es mich wie folgt zusammenfassen:

                                        Du willst in Dein internes Netz - willst aber keine Hersteller Cloud - oder generell eine fremde Cloud nutzen.
                                        Die torque App beherrscht kein HTTP Post (?)

                                        1. Du machst ein VPN für Dein Handy auf und greifst auf Dein internes Netz zu - NodeRed Flow bleibt wie er ist.
                                        2. Du installierst ein Reverse Proxy z. Bsp. nginx und greifst via http auf Dein internes Netz zu - NodeRed Flow bleibt wie er ist. (ggf. kannst Du hier auch https zum Zugang auf den Proxy und http vom Proxy auf Node Red umsetzen)
                                        3. Falls Du HTTP Post nutzen kannst, wäre ggf. die text2command Lösung machbar.
                                        4. Du nutzt die E-Mail Lösung. Wenn alle 2 Minuten eine E-Mail verschickt wird kann die Node ja alle Minuten auf neuen Eingang prüfen. Entweder machst wie gesagt einen eigenen E-Mail Account - Du kannst aber natürlich die Mails filtern.
                                          Sobald die E-Mail eingegangen ist, ist die Verarbeitung ein Klacks. Du hättest max. eine Verzögerung von 1 Minute drin.
                                          In der Mercedes-Me APP siehst Du auch keinen Momentanverbrauch, Motorstatus in Realtime etc. insofern werden die Daten auch nicht zeitnah geliefert. Insofern sollte man für den Zweck auch generell nochmals überlegen, welche Zeitintervalle Sinn machen.

                                        In letzter Konsequenz hängt es doch nur an den Fähigkeiten der torque-App.

                                        1 Reply Last reply Reply Quote 0
                                        • L
                                          Linedancer last edited by Linedancer

                                          Das hast du so korrekt zusammengefasst.
                                          Dann werd ich mich mal in das Thema Reverse Proxy einlesen, hab da zur Zeit noch gar keine Ahnung von.
                                          Ich denke mal das kann in einer Proxmox VM laufen.

                                          Danke für das Anschubsen.

                                          mickym 1 Reply Last reply Reply Quote 0
                                          • mickym
                                            mickym Most Active @Linedancer last edited by mickym

                                            @linedancer
                                            In Fällen von VPN und ReverseProxy brauchst halt noch einen DDNS Dienst oder falls einfacher über MyFritz.

                                            Ich nutze den nginx. In Deinem Fall dürfte die Konfiguration einfach sein. Auf den iobroker Admin über den Reverse Proxy zuzugreifen funktioniert auf der vielen Umleitungen oder internas nicht einwandfrei bzw. ich blicke die Funktionsweise ehrlich gesagt oft selbst nicht.

                                            Habs zumindest mal grob getestet, die nginx Konfig um das so umzuleiten, scheint einfach zu funktionieren:

                                                          location /torque {
                                                                    proxy_pass http://iobroker.fritz.box:1880/torque;
                                                            }
                                            

                                            6dff260c-8bce-4c68-9bf4-f96c04e841e8-image.png

                                            a95e1d3a-bf02-4b2a-a79c-8d25982b5bd8-image.png

                                            Ist zwar jetzt ein get und kein post HTTP Request - aber nachdem Du es ja schon getestet hast, sollte es ja gehen. Allerdings kann ich Dir bei weiteren nginx Problemen auch nicht helfen. Das können dann ggf. andere WEB Profis hier an Board.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            836
                                            Online

                                            32.1k
                                            Users

                                            80.7k
                                            Topics

                                            1.3m
                                            Posts

                                            3
                                            20
                                            838
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo