Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Entwicklung
  4. socket.io (eigene Visualisierung)

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.4k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.5k

socket.io (eigene Visualisierung)

Geplant Angeheftet Gesperrt Verschoben Entwicklung
socket.io
58 Beiträge 7 Kommentatoren 6.4k Aufrufe 6 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • D.VED D.VE

    Hi...
    arbeite mich gerade in socket.io ein, mit dem Ziel eine schickerer Visualisierung zu gestalten. Leider ist die Dokumentation etwas dürftig, insbesondere fehlt da einfach Beispielcode...

    Updaten bestehender Objekte klappt ganz gut. Aber wie lese ich initial einen Status aus? Am besten den ganzen Unter-Baum mit allen States...

    servConn.getObject('shelly.0.SHRGBW2#6621D3#1.lights.gain', 
        function(errorSTR,resultOBJ) {                        
            console.log(resultOBJ)
        }
    )
    

    ...funktionert und liefert mir alle möglichen Daten des Objektes zurück... nur nicht das eigentliche Objekt mit den gewünschtn Werten, das ich gerne hätte.

    aus getStates() werde ich garnicht schlau. Ich schaffe es irgendwie nicht, dass die Callback-Funktion aufgerufen wird

    servConn.getStates('shelly.0.SHRGBW2#6621D3#1.lights.gain', function (errorSTR, statesARY) {}
    

    ...funktioniert nicht.

    Auch die ID als Array zu übergeben (sollte laut Doku gehen) scheint nicht zu funktionieren...

    servConn.getStates(['shelly.0.SHRGBW2#6621D3#1.lights.gain'], function (errorSTR, statesARY) {
    

    Vielen Dank.

    UncleSamU Offline
    UncleSamU Offline
    UncleSam
    Developer
    schrieb am zuletzt editiert von UncleSam
    #14

    @d-ve sagte in socket.io (eigene Visualisierung):

    Leider ist die Dokumentation etwas dürftig, insbesondere fehlt da einfach Beispielcode...

    Wir sind dankbar für alle PRs mit Dokumentation. Wenn du deine Erfahrungen gesammelt hast, dann mach doch bitte einen PR.

    Updaten bestehender Objekte klappt ganz gut. Aber wie lese ich initial einen Status aus? Am besten den ganzen Unter-Baum mit allen States...

    Für dich zum spielen kannst du das gerne machen. Wenn das dann aber ein Adapter werden soll, musst du unbedingt wieder auf einzelne States subscriben. Insbesondere solltest du immer nur auf die States hören, die du gerade darstellst. Ich kann dir aus Erfahrung sagen, mit zu vielen State Änderungen bringst du ein schwächeres Gerät zum erliegen. (Die Lösung hat du oben ja schon erhalten)

    servConn.getObject('shelly.0.SHRGBW2#6621D3#1.lights.gain', 
        function(errorSTR,resultOBJ) {                        
            console.log(resultOBJ)
        }
    )
    

    ...funktionert und liefert mir alle möglichen Daten des Objektes zurück... nur nicht das eigentliche Objekt mit den gewünschtn Werten, das ich gerne hätte.

    Grundsätzliches zu ioBroker: es gibt Objekte und Datenpunkte (englisch: States). Objekte enthalten die (Meta-) Informationen während Datenpunkte den eigentlichen Wert enthalten. Die beiden "Bäume" sind komplett unabhängig voneinander. Es gibt zwar die Vorgabe, dass es zu jedem Datenpunkt ein Objekt geben muss, aber rein theoretisch ist das nicht nötig (damit das klar ist: es muss gemacht werden, aber das System erzwingt es bis jetzt nicht).

    aus getStates() werde ich garnicht schlau. Ich schaffe es irgendwie nicht, dass die Callback-Funktion aufgerufen wird

    ...funktioniert nicht.

    Hier sehe ich das Problem auch gerade nicht. Das sollte eigentlich funktionieren, wenn du nicht etwas falsch geschrieben hast. Grundsätzlich würde ich aber empfehlen, (auch) mit subscribe() zu arbeiten, den du willst ja mitbekommen, wenn sich ein Wert geändert hat.

    Auch die ID als Array zu übergeben (sollte laut Doku gehen) scheint nicht zu funktionieren.

    Auch das müsste gehen. Sonst versuche es einfach mal mit einem anderen Datenpunkt. Möglicherweise machen die Sonderzeichen von Shelly ein Problem (wobei ich mir das nicht vorstellen kann).

    Bitte bei Problemen mit meinen Adaptern, Issue auf GitHub erfassen: Loxone | I2C | Luxtronik2
    ♡-lichen Dank an meine Sponsoren

    D.VED 1 Antwort Letzte Antwort
    0
    • UncleSamU UncleSam

      @d-ve sagte in socket.io (eigene Visualisierung):

      Leider ist die Dokumentation etwas dürftig, insbesondere fehlt da einfach Beispielcode...

      Wir sind dankbar für alle PRs mit Dokumentation. Wenn du deine Erfahrungen gesammelt hast, dann mach doch bitte einen PR.

      Updaten bestehender Objekte klappt ganz gut. Aber wie lese ich initial einen Status aus? Am besten den ganzen Unter-Baum mit allen States...

      Für dich zum spielen kannst du das gerne machen. Wenn das dann aber ein Adapter werden soll, musst du unbedingt wieder auf einzelne States subscriben. Insbesondere solltest du immer nur auf die States hören, die du gerade darstellst. Ich kann dir aus Erfahrung sagen, mit zu vielen State Änderungen bringst du ein schwächeres Gerät zum erliegen. (Die Lösung hat du oben ja schon erhalten)

      servConn.getObject('shelly.0.SHRGBW2#6621D3#1.lights.gain', 
          function(errorSTR,resultOBJ) {                        
              console.log(resultOBJ)
          }
      )
      

      ...funktionert und liefert mir alle möglichen Daten des Objektes zurück... nur nicht das eigentliche Objekt mit den gewünschtn Werten, das ich gerne hätte.

      Grundsätzliches zu ioBroker: es gibt Objekte und Datenpunkte (englisch: States). Objekte enthalten die (Meta-) Informationen während Datenpunkte den eigentlichen Wert enthalten. Die beiden "Bäume" sind komplett unabhängig voneinander. Es gibt zwar die Vorgabe, dass es zu jedem Datenpunkt ein Objekt geben muss, aber rein theoretisch ist das nicht nötig (damit das klar ist: es muss gemacht werden, aber das System erzwingt es bis jetzt nicht).

      aus getStates() werde ich garnicht schlau. Ich schaffe es irgendwie nicht, dass die Callback-Funktion aufgerufen wird

      ...funktioniert nicht.

      Hier sehe ich das Problem auch gerade nicht. Das sollte eigentlich funktionieren, wenn du nicht etwas falsch geschrieben hast. Grundsätzlich würde ich aber empfehlen, (auch) mit subscribe() zu arbeiten, den du willst ja mitbekommen, wenn sich ein Wert geändert hat.

      Auch die ID als Array zu übergeben (sollte laut Doku gehen) scheint nicht zu funktionieren.

      Auch das müsste gehen. Sonst versuche es einfach mal mit einem anderen Datenpunkt. Möglicherweise machen die Sonderzeichen von Shelly ein Problem (wobei ich mir das nicht vorstellen kann).

      D.VED Offline
      D.VED Offline
      D.VE
      schrieb am zuletzt editiert von
      #15

      @unclesam said in socket.io (eigene Visualisierung):

      Objekte enthalten die (Meta-) Informationen während Datenpunkte den eigentlichen Wert enthalten

      Okay, vielen Dank. Das hilft enorm beim Verständnis von ioBroker

      @unclesam said in socket.io (eigene Visualisierung):

      Wir sind dankbar für alle PRs mit Dokumentation
      PR??
      Wer ist "wir"?
      Kann da gerne mal ein Youtube-Video zu machen, wenn ich da hinter gestiegen bin...

      @unclesam said in socket.io (eigene Visualisierung):

      wenn du nicht etwas falsch geschrieben hast

      Hab eigentlich nur Copy/Paste vom ioBroker gemacht

      @unclesam said in socket.io (eigene Visualisierung):

      Grundsätzlich würde ich aber empfehlen, (auch) mit subscribe() zu arbeiten

      Wo ist das dokumentiert? Für Updates reicht das ja... Aber ich möchte zum Beispiel in meinem Script einen eigenen Objektbaum erstellen. Dazu muss ich einmalig die kompletten Devices mit allen properties einlesen, um z.B. zu wissen, ob es sich um eine Lampe oder um eine Steckdose handelt. Das brauche ich ja nur einmalig und muss da nix subscriben.

      lg,
      Dave

      Mein SmartHome-Podcast:
      http://www.scheiss-technik.com

      UncleSamU 1 Antwort Letzte Antwort
      0
      • D.VED D.VE

        @unclesam said in socket.io (eigene Visualisierung):

        Objekte enthalten die (Meta-) Informationen während Datenpunkte den eigentlichen Wert enthalten

        Okay, vielen Dank. Das hilft enorm beim Verständnis von ioBroker

        @unclesam said in socket.io (eigene Visualisierung):

        Wir sind dankbar für alle PRs mit Dokumentation
        PR??
        Wer ist "wir"?
        Kann da gerne mal ein Youtube-Video zu machen, wenn ich da hinter gestiegen bin...

        @unclesam said in socket.io (eigene Visualisierung):

        wenn du nicht etwas falsch geschrieben hast

        Hab eigentlich nur Copy/Paste vom ioBroker gemacht

        @unclesam said in socket.io (eigene Visualisierung):

        Grundsätzlich würde ich aber empfehlen, (auch) mit subscribe() zu arbeiten

        Wo ist das dokumentiert? Für Updates reicht das ja... Aber ich möchte zum Beispiel in meinem Script einen eigenen Objektbaum erstellen. Dazu muss ich einmalig die kompletten Devices mit allen properties einlesen, um z.B. zu wissen, ob es sich um eine Lampe oder um eine Steckdose handelt. Das brauche ich ja nur einmalig und muss da nix subscriben.

        lg,
        Dave

        UncleSamU Offline
        UncleSamU Offline
        UncleSam
        Developer
        schrieb am zuletzt editiert von
        #16

        @d-ve sagte in socket.io (eigene Visualisierung):

        @unclesam said in socket.io (eigene Visualisierung):

        Objekte enthalten die (Meta-) Informationen während Datenpunkte den eigentlichen Wert enthalten

        Okay, vielen Dank. Das hilft enorm beim Verständnis von ioBroker

        Steht übrigens auch hier: https://github.com/ioBroker/ioBroker.socketio#brief-description-of-concept ;-)

        @unclesam said in socket.io (eigene Visualisierung):

        Wir sind dankbar für alle PRs mit Dokumentation
        PR??
        Wer ist "wir"?
        Kann da gerne mal ein Youtube-Video zu machen, wenn ich da hinter gestiegen bin...

        PR: Pull Request auf GitHub.
        wir: alle Entwickler, sowohl von Adaptern wie auch von Core-Komponenten wie socket.io.

        Grundsätzlich würde ich aber empfehlen, (auch) mit subscribe() zu arbeiten

        Wo ist das dokumentiert?

        Tja, die Dokumentation... Hier ist der Code: https://github.com/ioBroker/ioBroker.socketio/blob/919a467121e673590377a4fd1023f99ee38656b5/example/conn.js#L513-L519

        Aber, dann musst du das autoSubscribe im init() auf false setzen.

        Für Updates reicht das ja... Aber ich möchte zum Beispiel in meinem Script einen eigenen Objektbaum erstellen. Dazu muss ich einmalig die kompletten Devices mit allen properties einlesen, um z.B. zu wissen, ob es sich um eine Lampe oder um eine Steckdose handelt. Das brauche ich ja nur einmalig und muss da nix subscriben.

        Ja, dann brauchst du eigentlich den gesamten Objektbaum. Den kannst du dir holen, indem du objectsRequired im init() auf true setzt: https://github.com/ioBroker/ioBroker.socketio/blob/919a467121e673590377a4fd1023f99ee38656b5/example/conn.js#L180
        Oder irgendwann getObjects() aufrufst.

        Sei dir einfach bewusst, dass das riesige Datenmengen sein können. Ich habe bei mir mehrere tausend Objekte!

        Bitte bei Problemen mit meinen Adaptern, Issue auf GitHub erfassen: Loxone | I2C | Luxtronik2
        ♡-lichen Dank an meine Sponsoren

        UncleSamU 1 Antwort Letzte Antwort
        1
        • liv-in-skyL Offline
          liv-in-skyL Offline
          liv-in-sky
          schrieb am zuletzt editiert von
          #17

          weiß nicht, ob ich kapiert habe, was du suchst

          ich nutze in einem meiner html tabellen einen button als schalter. im html file wird ein script integriert, welche dann in der vis funktioniert - vielleicht sucht du sowas- diese const wird am ende des erzeugten html codes angehängt:

          const buttonScript =  '<script> function setOnDblClickCustom( myvalue ) {	var Self = this; var objID = myvalue;	Self.servConn.getStates(objID, (error, states) => {  console.log(states);  Self.servConn.setState(objID, !states[objID].val); }); } </script>'
          

          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

          D.VED 1 Antwort Letzte Antwort
          0
          • liv-in-skyL liv-in-sky

            weiß nicht, ob ich kapiert habe, was du suchst

            ich nutze in einem meiner html tabellen einen button als schalter. im html file wird ein script integriert, welche dann in der vis funktioniert - vielleicht sucht du sowas- diese const wird am ende des erzeugten html codes angehängt:

            const buttonScript =  '<script> function setOnDblClickCustom( myvalue ) {	var Self = this; var objID = myvalue;	Self.servConn.getStates(objID, (error, states) => {  console.log(states);  Self.servConn.setState(objID, !states[objID].val); }); } </script>'
            
            D.VED Offline
            D.VED Offline
            D.VE
            schrieb am zuletzt editiert von
            #18

            @unclesam said in socket.io (eigene Visualisierung):

            Pull Request auf GitHub

            Git ist für mich noch ein rotes Tuch, wo mir die Zeit fehlt, mich reinzuarbeiten (hab relativ wenig Nutzen davon). Könnte mir aber vorstellen, das Example mal etwas aufzubohren...

            @unclesam said in socket.io (eigene Visualisierung):

            Ja, dann brauchst du eigentlich den gesamten Objektbaum.

            ...aber nur von den Datenpunkten, die ich brauche. Sosnt sind das auch viel zu viele (komme mit 1000 nicht hin, hab ja schon weit über 100 Shellys).

            @unclesam said in socket.io (eigene Visualisierung):

            Den kannst du dir holen, indem du objectsRequired im init() auf true setzt
            Wo landen die denn dann?

            Bin jetzt mit dem Debugger durch:
            Er steigt hier in _queueCmdIfRequired() aus (da kommt true zurück) :
            https://github.com/ioBroker/ioBroker.socketio/blob/919a467121e673590377a4fd1023f99ee38656b5/example/conn.js#L1259

            Werde ich aber gerade nicht schlau raus.

            Spontan sieht es so aus, als ob er den Befehl in eine Queue schreibt, diese aber nicht ausführt...

            Mein SmartHome-Podcast:
            http://www.scheiss-technik.com

            UncleSamU 1 Antwort Letzte Antwort
            0
            • D.VED D.VE

              @unclesam said in socket.io (eigene Visualisierung):

              Pull Request auf GitHub

              Git ist für mich noch ein rotes Tuch, wo mir die Zeit fehlt, mich reinzuarbeiten (hab relativ wenig Nutzen davon). Könnte mir aber vorstellen, das Example mal etwas aufzubohren...

              @unclesam said in socket.io (eigene Visualisierung):

              Ja, dann brauchst du eigentlich den gesamten Objektbaum.

              ...aber nur von den Datenpunkten, die ich brauche. Sosnt sind das auch viel zu viele (komme mit 1000 nicht hin, hab ja schon weit über 100 Shellys).

              @unclesam said in socket.io (eigene Visualisierung):

              Den kannst du dir holen, indem du objectsRequired im init() auf true setzt
              Wo landen die denn dann?

              Bin jetzt mit dem Debugger durch:
              Er steigt hier in _queueCmdIfRequired() aus (da kommt true zurück) :
              https://github.com/ioBroker/ioBroker.socketio/blob/919a467121e673590377a4fd1023f99ee38656b5/example/conn.js#L1259

              Werde ich aber gerade nicht schlau raus.

              Spontan sieht es so aus, als ob er den Befehl in eine Queue schreibt, diese aber nicht ausführt...

              UncleSamU Offline
              UncleSamU Offline
              UncleSam
              Developer
              schrieb am zuletzt editiert von
              #19

              @d-ve sagte in socket.io (eigene Visualisierung):

              Git ist für mich noch ein rotes Tuch, wo mir die Zeit fehlt, mich reinzuarbeiten (hab relativ wenig Nutzen davon). Könnte mir aber vorstellen, das Example mal etwas aufzubohren...

              Der Vorteil von GitHub: du musst gar nichts mit Git machen, du kannst einfach die Dateien anpassen und daraus einen PR erstellen. Alles im Browser. Lohnt sich, das mal anzuschauen.

              Wo landen die denn dann?

              Da lag ich etwas falsch, es ist eine Object Subscription, du erhälst einfach Objekt-Veränderungen. Du kannst dich darauf mit dem onObjectChange Callback registrieren.

              Bin jetzt mit dem Debugger durch:
              Er steigt hier in _queueCmdIfRequired() aus (da kommt true zurück) :

              Was sagen die lokalen Variablen, wenn du in der Funktion bist? Insbesondere this._authRunning und this._isAuthDone.

              Allgemeine Frage: musst du dich authentifizieren? Hast du einen ioBroker Benutzer mit Passwort?

              Bitte bei Problemen mit meinen Adaptern, Issue auf GitHub erfassen: Loxone | I2C | Luxtronik2
              ♡-lichen Dank an meine Sponsoren

              D.VED 1 Antwort Letzte Antwort
              0
              • UncleSamU UncleSam

                @d-ve sagte in socket.io (eigene Visualisierung):

                Git ist für mich noch ein rotes Tuch, wo mir die Zeit fehlt, mich reinzuarbeiten (hab relativ wenig Nutzen davon). Könnte mir aber vorstellen, das Example mal etwas aufzubohren...

                Der Vorteil von GitHub: du musst gar nichts mit Git machen, du kannst einfach die Dateien anpassen und daraus einen PR erstellen. Alles im Browser. Lohnt sich, das mal anzuschauen.

                Wo landen die denn dann?

                Da lag ich etwas falsch, es ist eine Object Subscription, du erhälst einfach Objekt-Veränderungen. Du kannst dich darauf mit dem onObjectChange Callback registrieren.

                Bin jetzt mit dem Debugger durch:
                Er steigt hier in _queueCmdIfRequired() aus (da kommt true zurück) :

                Was sagen die lokalen Variablen, wenn du in der Funktion bist? Insbesondere this._authRunning und this._isAuthDone.

                Allgemeine Frage: musst du dich authentifizieren? Hast du einen ioBroker Benutzer mit Passwort?

                D.VED Offline
                D.VED Offline
                D.VE
                schrieb am zuletzt editiert von
                #20

                @unclesam said in socket.io (eigene Visualisierung):

                Da lag ich etwas falsch, es ist eine Object Subscription, du erhälst einfach Objekt-Veränderungen

                Wie werden die getriggert? Bei onUpdate() werden ja alle Änderungen reingespült.

                @unclesam said in socket.io (eigene Visualisierung):

                Was sagen die lokalen Variablen, wenn du in der Funktion bist? Insbesondere this._authRunning und this._isAuthDone.

                beide false

                @unclesam said in socket.io (eigene Visualisierung):

                Allgemeine Frage: musst du dich authentifizieren? Hast du einen ioBroker Benutzer mit Passwort?
                Nein, noch nicht...

                Mein SmartHome-Podcast:
                http://www.scheiss-technik.com

                UncleSamU 1 Antwort Letzte Antwort
                0
                • D.VED D.VE

                  @unclesam said in socket.io (eigene Visualisierung):

                  Da lag ich etwas falsch, es ist eine Object Subscription, du erhälst einfach Objekt-Veränderungen

                  Wie werden die getriggert? Bei onUpdate() werden ja alle Änderungen reingespült.

                  @unclesam said in socket.io (eigene Visualisierung):

                  Was sagen die lokalen Variablen, wenn du in der Funktion bist? Insbesondere this._authRunning und this._isAuthDone.

                  beide false

                  @unclesam said in socket.io (eigene Visualisierung):

                  Allgemeine Frage: musst du dich authentifizieren? Hast du einen ioBroker Benutzer mit Passwort?
                  Nein, noch nicht...

                  UncleSamU Offline
                  UncleSamU Offline
                  UncleSam
                  Developer
                  schrieb am zuletzt editiert von
                  #21

                  @d-ve sagte in socket.io (eigene Visualisierung):

                  Wie werden die getriggert? Bei onUpdate() werden ja alle Änderungen reingespült.

                  Bei Änderungen am Objekt (nicht am State). Das ist eine eher seltene Angelegenheit.

                  beide false

                  Wenn du den Breakpoint hier setzt: https://github.com/ioBroker/ioBroker.socketio/blob/919a467121e673590377a4fd1023f99ee38656b5/example/conn.js#L1270

                  • wird der angesprungen?
                  • was ist der Inhalt von version?

                  Nein, noch nicht...

                  OK, dann ist das mal kein Problem.

                  Bitte bei Problemen mit meinen Adaptern, Issue auf GitHub erfassen: Loxone | I2C | Luxtronik2
                  ♡-lichen Dank an meine Sponsoren

                  D.VED 1 Antwort Letzte Antwort
                  1
                  • UncleSamU UncleSam

                    @d-ve sagte in socket.io (eigene Visualisierung):

                    Wie werden die getriggert? Bei onUpdate() werden ja alle Änderungen reingespült.

                    Bei Änderungen am Objekt (nicht am State). Das ist eine eher seltene Angelegenheit.

                    beide false

                    Wenn du den Breakpoint hier setzt: https://github.com/ioBroker/ioBroker.socketio/blob/919a467121e673590377a4fd1023f99ee38656b5/example/conn.js#L1270

                    • wird der angesprungen?
                    • was ist der Inhalt von version?

                    Nein, noch nicht...

                    OK, dann ist das mal kein Problem.

                    D.VED Offline
                    D.VED Offline
                    D.VE
                    schrieb am zuletzt editiert von
                    #22

                    @unclesam said in socket.io (eigene Visualisierung):

                    wird der angesprungen?

                    yep

                    @unclesam said in socket.io (eigene Visualisierung):

                    was ist der Inhalt von version?

                    4.1.11

                    Mein SmartHome-Podcast:
                    http://www.scheiss-technik.com

                    UncleSamU 1 Antwort Letzte Antwort
                    0
                    • D.VED D.VE

                      @unclesam said in socket.io (eigene Visualisierung):

                      wird der angesprungen?

                      yep

                      @unclesam said in socket.io (eigene Visualisierung):

                      was ist der Inhalt von version?

                      4.1.11

                      UncleSamU Offline
                      UncleSamU Offline
                      UncleSam
                      Developer
                      schrieb am zuletzt editiert von
                      #23

                      @d-ve Dann ist das ja gut. Und ich nehme an, es wird auch nur einmal angesprungen. Danach ist die Verbindung da und alles ist gut. Kannst du mal den Vorschlag von @OliverIO versuchen und/oder schauen, was in Chrome / Edge (oder FF???) in den Entwickler-Tools unter "Netzwerk" steht. Es gibt dort eine langlebige Verbindung (unter "Time" steht bei mir "Pending") (1), dort kannst du drauf klicken und auf den Reiter "Messages" wechseln (2); da solltest du alle ausgetauschten Nachrichten sehen (3):

                      6e0dac09-c169-495d-aaa3-97f4bfcaf7aa-image.png

                      Was steht da bei dir?

                      Bitte bei Problemen mit meinen Adaptern, Issue auf GitHub erfassen: Loxone | I2C | Luxtronik2
                      ♡-lichen Dank an meine Sponsoren

                      D.VED 1 Antwort Letzte Antwort
                      0
                      • UncleSamU UncleSam

                        @d-ve Dann ist das ja gut. Und ich nehme an, es wird auch nur einmal angesprungen. Danach ist die Verbindung da und alles ist gut. Kannst du mal den Vorschlag von @OliverIO versuchen und/oder schauen, was in Chrome / Edge (oder FF???) in den Entwickler-Tools unter "Netzwerk" steht. Es gibt dort eine langlebige Verbindung (unter "Time" steht bei mir "Pending") (1), dort kannst du drauf klicken und auf den Reiter "Messages" wechseln (2); da solltest du alle ausgetauschten Nachrichten sehen (3):

                        6e0dac09-c169-495d-aaa3-97f4bfcaf7aa-image.png

                        Was steht da bei dir?

                        D.VED Offline
                        D.VED Offline
                        D.VE
                        schrieb am zuletzt editiert von
                        #24

                        @unclesam said in socket.io (eigene Visualisierung):

                        da solltest du alle ausgetauschten Nachrichten sehen

                        590a75d4-d8bf-48d5-9b59-177151afbe37-grafik.png

                        Ab da kommen nur noch stateChange Nachrichten

                        Hab auch nochmal geschaut, die Queue wird wohl irgendwo geleert:
                        0089c8e3-4243-4d56-aa0e-a518fd6ba090-grafik.png

                        89d1d323-686f-458c-af0f-0d2afda593f5-grafik.png

                        Hat das was zu bedeuten?

                        Trying to get states again, because emitted getStates still pending
                        

                        Mein SmartHome-Podcast:
                        http://www.scheiss-technik.com

                        UncleSamU 1 Antwort Letzte Antwort
                        0
                        • D.VED D.VE

                          @unclesam said in socket.io (eigene Visualisierung):

                          da solltest du alle ausgetauschten Nachrichten sehen

                          590a75d4-d8bf-48d5-9b59-177151afbe37-grafik.png

                          Ab da kommen nur noch stateChange Nachrichten

                          Hab auch nochmal geschaut, die Queue wird wohl irgendwo geleert:
                          0089c8e3-4243-4d56-aa0e-a518fd6ba090-grafik.png

                          89d1d323-686f-458c-af0f-0d2afda593f5-grafik.png

                          Hat das was zu bedeuten?

                          Trying to get states again, because emitted getStates still pending
                          
                          UncleSamU Offline
                          UncleSamU Offline
                          UncleSam
                          Developer
                          schrieb am zuletzt editiert von
                          #25

                          @d-ve Ja, es scheint, dass getStates hängt. Du hast gesagt dass du tausende States hast. Vielleicht solltest du wirklich nur die States holen, die du brauchst.

                          Bitte bei Problemen mit meinen Adaptern, Issue auf GitHub erfassen: Loxone | I2C | Luxtronik2
                          ♡-lichen Dank an meine Sponsoren

                          D.VED 1 Antwort Letzte Antwort
                          0
                          • UncleSamU UncleSam

                            @d-ve Ja, es scheint, dass getStates hängt. Du hast gesagt dass du tausende States hast. Vielleicht solltest du wirklich nur die States holen, die du brauchst.

                            D.VED Offline
                            D.VED Offline
                            D.VE
                            schrieb am zuletzt editiert von
                            #26

                            @unclesam said in socket.io (eigene Visualisierung):

                            @d-ve Ja, es scheint, dass getStates hängt. Du hast gesagt dass du tausende States hast. Vielleicht solltest du wirklich nur die States holen, die du brauchst.

                            das ist ja genau das, was ich hier von Anfang an versuche... Weiß nur nicht wie...

                            Mein SmartHome-Podcast:
                            http://www.scheiss-technik.com

                            UncleSamU 1 Antwort Letzte Antwort
                            0
                            • D.VED D.VE

                              @unclesam said in socket.io (eigene Visualisierung):

                              @d-ve Ja, es scheint, dass getStates hängt. Du hast gesagt dass du tausende States hast. Vielleicht solltest du wirklich nur die States holen, die du brauchst.

                              das ist ja genau das, was ich hier von Anfang an versuche... Weiß nur nicht wie...

                              UncleSamU Offline
                              UncleSamU Offline
                              UncleSam
                              Developer
                              schrieb am zuletzt editiert von
                              #27

                              @d-ve sagte in socket.io (eigene Visualisierung):

                              das ist ja genau das, was ich hier von Anfang an versuche... Weiß nur nicht wie...

                              Sorry, jetzt haben wir uns wirklich genau einmal in Kreis gedreht. Naja, immerhin habe ich eine Information mehr: es gibt einen Request für ["getStates", "*"]. Im Code von conn.js finde ich dazu nichts. Machst du das in deinem Code?

                              Im Beispiel-Code wir das hier gemacht: https://github.com/ioBroker/ioBroker.socketio/blob/919a467121e673590377a4fd1023f99ee38656b5/example/index.html#L27

                              Bei dir würde ich aber wie gesagt nicht empfehlen, alle States zu holen.

                              Wenn du nicht weisst, woher der Request kommt, dann setze mal hier einen Breakpoint:
                              https://github.com/ioBroker/ioBroker.socketio/blob/919a467121e673590377a4fd1023f99ee38656b5/example/conn.js#L775
                              und schau dir dann den Callstack an.

                              Bitte bei Problemen mit meinen Adaptern, Issue auf GitHub erfassen: Loxone | I2C | Luxtronik2
                              ♡-lichen Dank an meine Sponsoren

                              D.VED 1 Antwort Letzte Antwort
                              0
                              • UncleSamU UncleSam

                                @d-ve sagte in socket.io (eigene Visualisierung):

                                das ist ja genau das, was ich hier von Anfang an versuche... Weiß nur nicht wie...

                                Sorry, jetzt haben wir uns wirklich genau einmal in Kreis gedreht. Naja, immerhin habe ich eine Information mehr: es gibt einen Request für ["getStates", "*"]. Im Code von conn.js finde ich dazu nichts. Machst du das in deinem Code?

                                Im Beispiel-Code wir das hier gemacht: https://github.com/ioBroker/ioBroker.socketio/blob/919a467121e673590377a4fd1023f99ee38656b5/example/index.html#L27

                                Bei dir würde ich aber wie gesagt nicht empfehlen, alle States zu holen.

                                Wenn du nicht weisst, woher der Request kommt, dann setze mal hier einen Breakpoint:
                                https://github.com/ioBroker/ioBroker.socketio/blob/919a467121e673590377a4fd1023f99ee38656b5/example/conn.js#L775
                                und schau dir dann den Callstack an.

                                D.VED Offline
                                D.VED Offline
                                D.VE
                                schrieb am zuletzt editiert von
                                #28

                                @unclesam said in socket.io (eigene Visualisierung):

                                Im Beispiel-Code wir das hier gemacht: https://github.com/ioBroker/ioBroker.socketio/blob/919a467121e673590377a4fd1023f99ee38656b5/example/index.html#L27

                                I know... das hat nur nicht funktioniert... Deswegen habe ich den Request jetzt schon dreihundertiverundachtzigmal umgeschrieben

                                @unclesam said in socket.io (eigene Visualisierung):

                                Bei dir würde ich aber wie gesagt nicht empfehlen, alle States zu holen.

                                Wie gesagt, habe ich auch nicht vor... Ich möchte momentan einfach nur mal IRGENDEINEN State holen, am liebsten ein spezifisches Device.
                                Momentan funktioniert bei mir nur der onUpdate()-Teil. Aber wenn ich den Status meiner Lampe anzeigen will, kann nicht so lange warten bis die sich mal bequemt, zufällig ein Update zu senden.

                                lg, Dave

                                Mein SmartHome-Podcast:
                                http://www.scheiss-technik.com

                                UncleSamU 1 Antwort Letzte Antwort
                                0
                                • D.VED D.VE

                                  @unclesam said in socket.io (eigene Visualisierung):

                                  Im Beispiel-Code wir das hier gemacht: https://github.com/ioBroker/ioBroker.socketio/blob/919a467121e673590377a4fd1023f99ee38656b5/example/index.html#L27

                                  I know... das hat nur nicht funktioniert... Deswegen habe ich den Request jetzt schon dreihundertiverundachtzigmal umgeschrieben

                                  @unclesam said in socket.io (eigene Visualisierung):

                                  Bei dir würde ich aber wie gesagt nicht empfehlen, alle States zu holen.

                                  Wie gesagt, habe ich auch nicht vor... Ich möchte momentan einfach nur mal IRGENDEINEN State holen, am liebsten ein spezifisches Device.
                                  Momentan funktioniert bei mir nur der onUpdate()-Teil. Aber wenn ich den Status meiner Lampe anzeigen will, kann nicht so lange warten bis die sich mal bequemt, zufällig ein Update zu senden.

                                  lg, Dave

                                  UncleSamU Offline
                                  UncleSamU Offline
                                  UncleSam
                                  Developer
                                  schrieb am zuletzt editiert von
                                  #29

                                  @d-ve Jedes Mal, wenn ich deinen Screenshot anschaue, fällt mir wieder etwas auf...

                                  Auf welchen Port verbindest du dich mit dem socket.io Server? Machst du das etwa mit Port 8081? Gleich nach deinem "getStates()" reklamiert nämlich der Admin, dass mit dem Request etwas nicht stimmt. Richtig wäre der Port des socket.io Adapters (normalerweise 8082).

                                  Bitte bei Problemen mit meinen Adaptern, Issue auf GitHub erfassen: Loxone | I2C | Luxtronik2
                                  ♡-lichen Dank an meine Sponsoren

                                  HomoranH D.VED 2 Antworten Letzte Antwort
                                  0
                                  • UncleSamU UncleSam

                                    @d-ve Jedes Mal, wenn ich deinen Screenshot anschaue, fällt mir wieder etwas auf...

                                    Auf welchen Port verbindest du dich mit dem socket.io Server? Machst du das etwa mit Port 8081? Gleich nach deinem "getStates()" reklamiert nämlich der Admin, dass mit dem Request etwas nicht stimmt. Richtig wäre der Port des socket.io Adapters (normalerweise 8082).

                                    HomoranH Nicht stören
                                    HomoranH Nicht stören
                                    Homoran
                                    Global Moderator Administrators
                                    schrieb am zuletzt editiert von
                                    #30

                                    @unclesam sagte in socket.io (eigene Visualisierung):

                                    Richtig wäre der Port des socket.io Adapters (normalerweise 8082).

                                    8084!

                                    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                    1 Antwort Letzte Antwort
                                    0
                                    • UncleSamU UncleSam

                                      @d-ve Jedes Mal, wenn ich deinen Screenshot anschaue, fällt mir wieder etwas auf...

                                      Auf welchen Port verbindest du dich mit dem socket.io Server? Machst du das etwa mit Port 8081? Gleich nach deinem "getStates()" reklamiert nämlich der Admin, dass mit dem Request etwas nicht stimmt. Richtig wäre der Port des socket.io Adapters (normalerweise 8082).

                                      D.VED Offline
                                      D.VED Offline
                                      D.VE
                                      schrieb am zuletzt editiert von
                                      #31

                                      @unclesam said in socket.io (eigene Visualisierung):

                                      Auf welchen Port verbindest du dich mit dem socket.io Server? Machst du das etwa mit Port 8081?

                                      Ja nehme 8081. 8084 aus dem Beispiel hat garnicht funktioniert...

                                      @unclesam said in socket.io (eigene Visualisierung):

                                      der Port des socket.io Adapters (normalerweise 8082).

                                      Hmmm... das könnte die Ursache sein, wobei sich mir dann die Frage stellt, warum der Adapter unter 8081 dann überhaupt antwortet. Kann das nachher mal mit 8082 testen (bin gerade nicht am Platz).

                                      lg, Dave

                                      Mein SmartHome-Podcast:
                                      http://www.scheiss-technik.com

                                      HomoranH UncleSamU 2 Antworten Letzte Antwort
                                      0
                                      • D.VED D.VE

                                        @unclesam said in socket.io (eigene Visualisierung):

                                        Auf welchen Port verbindest du dich mit dem socket.io Server? Machst du das etwa mit Port 8081?

                                        Ja nehme 8081. 8084 aus dem Beispiel hat garnicht funktioniert...

                                        @unclesam said in socket.io (eigene Visualisierung):

                                        der Port des socket.io Adapters (normalerweise 8082).

                                        Hmmm... das könnte die Ursache sein, wobei sich mir dann die Frage stellt, warum der Adapter unter 8081 dann überhaupt antwortet. Kann das nachher mal mit 8082 testen (bin gerade nicht am Platz).

                                        lg, Dave

                                        HomoranH Nicht stören
                                        HomoranH Nicht stören
                                        Homoran
                                        Global Moderator Administrators
                                        schrieb am zuletzt editiert von
                                        #32

                                        @d-ve Bitte sieh bei dir nach auf welchem Port dein socket.io läuft
                                        8082 ist der port für den Web-Adapter, 8081 für den admin, socket.io hat üblicherweise 8084, könnte aber bei dir umkonfiguriert sein.

                                        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                        UncleSamU 1 Antwort Letzte Antwort
                                        0
                                        • D.VED D.VE

                                          @unclesam said in socket.io (eigene Visualisierung):

                                          Auf welchen Port verbindest du dich mit dem socket.io Server? Machst du das etwa mit Port 8081?

                                          Ja nehme 8081. 8084 aus dem Beispiel hat garnicht funktioniert...

                                          @unclesam said in socket.io (eigene Visualisierung):

                                          der Port des socket.io Adapters (normalerweise 8082).

                                          Hmmm... das könnte die Ursache sein, wobei sich mir dann die Frage stellt, warum der Adapter unter 8081 dann überhaupt antwortet. Kann das nachher mal mit 8082 testen (bin gerade nicht am Platz).

                                          lg, Dave

                                          UncleSamU Offline
                                          UncleSamU Offline
                                          UncleSam
                                          Developer
                                          schrieb am zuletzt editiert von
                                          #33

                                          @d-ve sagte in socket.io (eigene Visualisierung):

                                          wobei sich mir dann die Frage stellt, warum der Adapter unter 8081 dann überhaupt antwortet

                                          Ganz einfach: das ist der Port von Admin. Und Admin verwendet auch socket.io, aber teilweise andere Befehle (da Admin mehr können muss als Socket.io).

                                          Und: den socket.io Adapter hast du schon installiert, oder?

                                          Bitte bei Problemen mit meinen Adaptern, Issue auf GitHub erfassen: Loxone | I2C | Luxtronik2
                                          ♡-lichen Dank an meine Sponsoren

                                          D.VED 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          381

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe