Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. Zugriff auf iobroker via soket.io

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Zugriff auf iobroker via soket.io

    This topic has been deleted. Only users with topic management privileges can see it.
    • mickym
      mickym Most Active @apollon77 last edited by mickym

      @apollon77 Ja das sieht sehr sauber aus - alle Warnmeldungen sind weg:

      node-red.0	2021-02-02 16:33:12.094	info	(3094) Automatic objects creation is not enabled. You can enable it in the node configuration
      node-red.0	2021-02-02 16:32:53.955	info	(3073) Starting node-red: --max-old-space-size=512 /opt/iobroker/node_modules/iobroker.node-red/node_modules/node-red/red.js -v --settings /opt/iobroker/iobroker-data/node-red/settings.js
      node-red.0	2021-02-02 16:32:53.016	info	(3073) starting. Version 2.0.4 in /opt/iobroker/node_modules/iobroker.node-red, node: v12.20.1, js-controller: 3.1.6
      host.MWHome	2021-02-02 16:32:51.320	info	instance system.adapter.node-red.0 started with pid 3073
      host.MWHome	2021-02-02 16:32:48.848	info	instance system.adapter.node-red.0 terminated with code 156 (START_IMMEDIATELY_AFTER_STOP)
      host.MWHome	2021-02-02 16:32:48.557	info	Update repository "default" under "http://download.iobroker.net/sources-dist.json"
      host.MWHome	2021-02-02 16:32:48.272	info	iobroker exit 0
      node-red.0	2021-02-02 16:32:48.270	info	(2101) Terminated (START_IMMEDIATELY_AFTER_STOP): Without reason
      

      Adapterversion 2.0.4

      NodeRed Version 1.2.8

      da48f79c-16d2-4963-9900-c67eb6a0b1bf-image.png

      👍 👍 👍

      na bin ja gespannt - was sonst so auftaucht. Meine ganze Logik ist hier halt abgebildet. Ich hoffe NUR, dass dieser Adapter weiter gepflegt und gehegt wird ;), weil ich hier wohl unter den iobroker Usern eher zur Minderheit gehöre, der alles mit NR macht. ;). Nicht dass jemand auf die Idee kommt, den Support einzustellen. 😉

      Nochmal die Frage: Soll ich den Enhancement Vorschlag auf Englisch oder Deutsch einstellen, wenn sonst niemand an dem Adapter arbeitet, ist es ja egal?

      apollon77 1 Reply Last reply Reply Quote 0
      • apollon77
        apollon77 @mickym last edited by

        @mickym Super, dann geht das raus.

        A Ende werden wir es nicht einstellen, es ist immer nur die Frage wer ggf Zeit für Weiterentwicklungen findet. EInfache node-red updates sind fix gemacht wenn jemand darauf hinweist 🙂

        Issue Sprache ist effektiv beides ok.

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

          @apollon77 Danke nochmals - bevor ich mich wieder den socket.io Problemen zuwende, da habe ich noch zu kämpfen und eine Idee in GitHub formuliere, noch etwas was man vielleicht in eine der nächsten Versionen ohne großen Aufwand realisieren könnte - hätte ich.
          Ich muss das immer nach jedem Update des Node-Red Adapters machen und die settings.js modifizieren:

          Könnte man dieses setting

          // When httpAdminRoot is used to move the UI to a different root path, the
              // following property can be used to identify a directory of static content
              // that should be served at http://localhost:1880/.
              //httpStatic: '/home/nol/node-red-dashboard/',
              httpStatic: "/data/node-red",
          

          nicht auch in die Adapterkonfig aufnehmen - damit ich das nicht jedes Mal ändern muss. Da liegen meine Bilder für das Dashboard und dieses Verzeichnis weist auf einen externen Datenträger.

          Nachdem man ja den Stammpfad ändern kann, wäre es eigentlich sinnvoll diesen Parameter auch über die Adapterkonfig speichern zu können.

          apollon77 1 Reply Last reply Reply Quote 0
          • apollon77
            apollon77 @mickym last edited by

            @mickym Dann mach mal bitte ein Github issue als Feature Request

            1 Reply Last reply Reply Quote 0
            • R
              rewenode @mickym last edited by

              @mickym sagte in Zugriff auf iobroker via soket.io:

              Wie kann ich ganze Objektbäume durchforsten - wie ist die Syntax mit Wildcards`?

              Also zumindest der * sollte doch gehen.

              socketIO.jpg

              Ich meine, dass früher auch mal so was ging zigbee.0. Jedenfalls stand es so noch in meinem alten Flow.

              Ansonsten halt zigbee.0.* oder *.STATE
              Der Rest kann dann ja einfach in NR gefiltert werden.

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

                @apollon77 Ehrlich gesagt weiß ich nicht Recht wie man ein Issue als Feature Request erstellt. Ich hab jetzt mal ein Issue erstellt. Sorry für meine Unkenntnis.

                Wenn das so richtig war - einfach ein Issue zu erstellen, dann kann ich ja das Hauptziel (s. nächstes Posting) entsprechende in Textform formulieren.

                apollon77 R 2 Replies Last reply Reply Quote 0
                • mickym
                  mickym Most Active @rewenode last edited by mickym

                  @rewenode Nun ehrlich gesagt, weiß ich nicht wie das geht - was Du gemacht hast. Kannst Du mal den ganzen Flow zum Importieren posten? Wie sprichst Du in der function Node die socket.io Schnittstelle an? Ich schaffe das nicht mit Boardmitteln.

                  Meine Idee war genau so was als Node zu realisieren, so dass ich in eine "iobroker In" Node mit diesen Wildcards arbeiten kann.

                  So dass man in einer iobroker In-Node mindestens so arbeiten kann:

                  screen.png

                  ein Traum von mir wäre mit mehreren Sternchen zu arbeiten - analog dem "mqtt + Wildcard" also zum Beispiel so

                  screen.png

                  Bislang kann nur der List Node mit * arbeiten, aber der abonniert keine Themen und ich polle deshalb:

                  Warum ich das Ganze machen - auch hier nochmal grafisch dargestellt:

                  screen.png

                  Also wenn Du mir den ganzen Flow zur Verfügung stellen kannst, wie Du mit diesen Wildcards auf der socket-io Schnittstelle Datenpunkte abonnierst, wäre mir schon sehr geholfen. Dann spare ich mir vielleicht den ganzen Aufwand. 😉

                  Wie kommuniziert Deine function Node mit iobroker? Ich bin mir fast sicher - dass ich mir mit Deiner function Node den Aufwand spare - und ich glaube das würde vielen helfen. 😉
                  und dann halt noch die Masterfrage - wie bzw kommen denn die Values der "Subscripten" Objekte bei Änderungen auch automatisch rein? Bzw. kommen die einfach dann aus der Function Node raus?

                  R 1 Reply Last reply Reply Quote 0
                  • apollon77
                    apollon77 @mickym last edited by

                    @mickym sagte in Zugriff auf iobroker via soket.io:

                    Ich hab jetzt mal ein Issue erstellt. Sorry für meine Unkenntnis.

                    kein Problem, alles korrekt

                    mickym 1 Reply Last reply Reply Quote 0
                    • R
                      rewenode @mickym last edited by

                      @mickym sagte in Zugriff auf iobroker via soket.io:

                      Also wenn Du mir den ganzen Flow zur Verfügung stellen kannst, wie Du mit diesen Wildcards auf der socket-io Schnittstelle Datenpunkte abonnierst, wäre mir schon sehr geholfen. Dann spare ich mir vielleicht den ganzen Aufwand.

                      Na, du wolltest es ja nicht anders;-)
                      Sei gewarnt, das ist nur aus der Hüfte geschossen und eigentlich nicht zur Nachnutzung gedacht.
                      Also im Prinzip bist du ja schon den selben Weg gegangen wie ich.
                      Bei mir läuft das ganze zwar in deinem NR-Docker-Container, sollte aber in jedem eigenständigem NR ebenfalls funktionieren.

                      1. unter NR Socken.io < 3.0 installieren. Bei mir: 2.2.0
                      2. beiliegende conn.js ins NR Verzeichnis kopieren. Achtung hab nur die offensichtlichen Sachen geändert. Und im Flow nur subscribe/unsunscribe/getstate implementiert und getestet.
                      3. connection im Flow anpassen. Habs zum test leider hart kodiert.
                      servConn.init({
                              name: 'node-red.' + node.id, // optional - default 'vis.0'
                              connLink: 'http://192.168.99.119:8084', // 8084 optional URL of the socket.io adapter
                              socketSession: ''
                          }, {
                      
                      1. settings.json anpassen. Bei mir:
                      ...
                      functionGlobalContext: {
                              io:require('socket.io-client'),
                              servConn:require('./conn.js')
                          },
                      ...
                      

                      Dann in in den Change-nodes ggf die patterns anpassen.
                      Sollen mehrere Objecte abboniert werden, muss das nächste Objekt nach payload.suscribePatter[1] usw.

                      nr-socketIo-schnellschuss.zip

                      Melde dich, wenn du nicht klar kommst

                      mickym 3 Replies Last reply Reply Quote 0
                      • mickym
                        mickym Most Active @apollon77 last edited by

                        @apollon77
                        Hallo - Danke erst mal für die Rückmeldung. Dann ist ja alles gut ☺

                        Ich habe mir mal die ganzen offenen Issues angeschaut und eines gefunden , was bereits als Enhancement deklariert ist und ähnliche Anforderungen hat, aber in meinen Augen kann man es noch erweitern,

                        Schau mal, ob Euch das so langt als Beschreibung: https://github.com/ioBroker/ioBroker.node-red/issues/30

                        oder soll ich ein eigenes Issue machen und mein Beschreibung, die ich dort als Kommentar hinterlassen habe, nochmal als neues Issue aufmachen?

                        Osrx created this issue in ioBroker/ioBroker.node-red

                        closed Read the whole hive #30

                        apollon77 1 Reply Last reply Reply Quote 0
                        • R
                          rewenode @mickym last edited by rewenode

                          @mickym ein Traum von mir wäre mit mehreren Sternchen zu arbeiten - analog dem "mqtt + Wildcard" also zum Beispiel so

                          Also bei mir geht das problemlos mit dem ioBroker_In node.

                          2021-02-03_16-36-11.jpg

                          Nachtrag, sehe grad, du willst mehrere Wildcards im String. Das hab ich nicht getestet.

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

                            @rewenode Ganz lieben Dank! - Es ist ja schon mal toll, dass es da jemand in der Community gibt, der die gleiche Idee hat, um ein Problem zu lösen- Inzwischen habe ich ja auch bissi Erfahrung gesammelt.

                            Ich melde mich, wenn ich Fragen habe bzw. nicht zurecht komme.

                            Nun muss ich mir das ganze aber erst mal genau anschauen und versuchen zu verstehen. 🙂

                            Ich sehe gerade bei Dir geht das mit der inNode - dann muss ich mal sehen, ob ich ein anderes Problem habe.

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

                              @rewenode Hmm dann verstehe ich das alles nicht - dann muss es wohl an irgendeiner Konfig liegen - bei mir kommt da nichts raus - ich habe es sogar mal wie Du eben mit dem Xiaomi Würfel probiert - aber auch da tut sich nichts:

                              645f93d6-1616-420c-849b-6f4fe4fe6e82-image.png

                              Es kommt bei mir einfach nichts an:

                              d200ecee-1a0f-4c84-80c8-232a5aeb0962-image.png

                              Es ändert auch nichts ob ich das Object oder nur den value in der IN Node eintrage.

                              Ich sehe allerdings einen Unterschied in Deinem Screenshot - als ob ich eine ganz andere Version habe????

                              screen.png

                              Oder liegt das an Deinem Browser (Safari - denke ich mal 😉 )

                              Wobei ich gerade sehe - das Debug Fenster zeigt doch einen ganz anderen Output (von Alexa) und nichts von Deinem Würfel ??????????????

                              R 1 Reply Last reply Reply Quote 0
                              • apollon77
                                apollon77 @mickym last edited by

                                @mickym sagte in Zugriff auf iobroker via soket.io:

                                oder soll ich ein eigenes Issue machen und mein Beschreibung, die ich dort als Kommentar hinterlassen habe, nochmal als neues Issue aufmachen?

                                Überleg dir wie du es haben wollen würdest ... kann ich dir so grad nicht sagen. wenns passt machs rein sonst extra issue

                                mickym 1 Reply Last reply Reply Quote 0
                                • R
                                  rewenode @mickym last edited by

                                  @mickym sagte in Zugriff auf iobroker via soket.io:

                                  Oder liegt das an Deinem Browser (Safari - denke ich mal )

                                  Also, da scheint etwas anderes bei dir im Argen zu sein.

                                  2021-02-03_17-01-35.jpg

                                  Gerade getestet mit Safari und Chrome.

                                  Alias-Objekt, das originale Object und Alle Objekte mit 2 Wildcards bringen alle das gleiche Ergebnis.

                                  mickym 2 Replies Last reply Reply Quote 0
                                  • mickym
                                    mickym Most Active @rewenode last edited by mickym

                                    @rewenode Ehrlich gesagt, weiß ich nicht was. An der Adapterkonfig kann es eigentlich nicht liegen:

                                    0253b44c-a8db-417f-af2d-d0004b52b1d5-image.png

                                    Das Einzige was ich geändert habe, ist die Projektfunktion aktiviert zu haben und dafür die Konvertierung in Strings deaktiviert zu haben.

                                    Ich hab die Konvertierung mal wieder rein genommen - aber das ändert nichts.

                                    @apollon77 Irgendeine Idee - was an meinem Node-Red schief sein könnte und warum das bei mir nicht geht, die Wildcards bei @rewenode schon. Dann brauche ich nämlich auch kein Issue für ein Enhancement aufmachen. Dann hat mein System ja nur irgendein Fehler. 😞

                                    R 1 Reply Last reply Reply Quote 0
                                    • R
                                      rewenode @mickym last edited by

                                      @mickym sagte in Zugriff auf iobroker via soket.io:

                                      Das Einzige was ich geändert habe, ist die Projektfunktion aktiviert zu haben und dafür die Konvertierung in Strings deaktiviert zu haben.

                                      Sieht eigentlich im Prinzip aus wie bei mir.

                                      2021-02-03_18-14-46.jpg

                                      Teste doch mal Wildcards bei Nicht-mqtt-Objekten. Irgendwo muss man ja anfangen ;-(

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

                                        @rewenode Du bist so Klasse!!!! 👍 👍 👍 👍

                                        Auch wenn ich nicht weiß, warum meine lokaler NodeRed Adapter mit den iobroker-in Nodes solche Probleme macht mit den Wildcards-

                                        Aber ich habe noch eine Standalone Node Red Installation auf meinem Windows 10 Rechner laufen und da klappt Dein Flow schon mal ausgezeichnet - da kann man noch einiges draus machen.

                                        Super STARK!

                                        9ac3c396-4868-44d3-8c31-bf2123519e7e-image.png

                                        und hast Du toll gemacht, dass man gleich im iobroker sieht mit welcher Node man verbunden ist. 😉

                                        4f88d6db-78b8-43dd-ad1b-d03eb9e8b333-image.png

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

                                          @rewenode Ich habs doch wie Du siehst auch mit den zigbee.0.*.rotate_angle genauso wie Du versucht! Das klappt nicht - aber Dein socket-io ZUgang der passt. 😉

                                          Wenn ich nur wüsste wo man bei meinem Node-Red Adapter sonst anfangen könnte zu suchen - bei mir klappt das ja schon seit Anfang an nicht. An der Hardware kann es ja eigentlich nicht liegen und mein Log- im iobroker ist super sauber, wenn ich nicht selbst irgendwelche Dummheiten anstelle. Und die iobroker-Nodes bekomme ich ja nur über den Adapter geliefert.

                                          R 2 Replies Last reply Reply Quote 0
                                          • R
                                            rewenode @mickym last edited by

                                            @mickym sagte in Zugriff auf iobroker via soket.io:

                                            Ich habs doch wie Du siehst auch mit den zigbee.0.*.rotate_angle genauso wie Du versucht! Das klappt nicht - aber Dein socket-io ZUgang der passt.

                                            Ja, da bin ich auch ratlos. Na da hast du ja mit socket.io wenigstens eine Alternative bis der eigentliche Fehler mal gefunden ist.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            774
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            admin adapter socket io
                                            3
                                            51
                                            3415
                                            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