Skip to content
  • 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
  1. ioBroker Community Home
  2. Deutsch
  3. Entwicklung
  4. Socket-IO: Log-Ausgaben empfangen

NEWS

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

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

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

Socket-IO: Log-Ausgaben empfangen

Geplant Angeheftet Gesperrt Verschoben Entwicklung
socket-io
6 Beiträge 3 Kommentatoren 529 Aufrufe 3 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.
  • nokxsN Offline
    nokxsN Offline
    nokxs
    schrieb am zuletzt editiert von
    #1

    Hallo zusammen,

    ich bin gerade dabei etwas mit dem Socket.io-Adapter herumzuspielen, um eine kleine Visual Studio Code Erweiterung zu schreiben.

    Mit der Erweiterung möchte ich Skripte vom JS-Adapter downloaden/uploaden, sowie diese starten und stoppen können. Die ersten vier Sachen funktionieren schon rudimentär.

    Jetzt würde ich noch gerne (genau wie im Webinterface) die Logausgaben der JS-Skripte in einem VS Code Output anzeigen. Aktuell scheitere ich aber daran, dass ich keine Logs bekomme. Versucht habe ich folgendes:

        registerForLogs() {
            if (this.client && this.isConnected) {
                this.client.on("log", (message: any) => {
                    console.log(message);
                });
    
                this.client.emit("requireLog", true, (err: any) => {
                    console.log(err);
                });
            }
        }
    

    this.client ist meine Socket.io-Verbindung, welche ich vorher aufbaue.

    Der Code wird sauber durchlaufen und es fliegt keine Exception. Ich lande allerdings auch nie in Zeile 5, sprich ich bekomme keine Logs geschickt.

    Was muss ich machen, damit ich Log-Ausgaben geschickt bekomme?

    UncleSamU 1 Antwort Letzte Antwort
    0
    • nokxsN nokxs

      Hallo zusammen,

      ich bin gerade dabei etwas mit dem Socket.io-Adapter herumzuspielen, um eine kleine Visual Studio Code Erweiterung zu schreiben.

      Mit der Erweiterung möchte ich Skripte vom JS-Adapter downloaden/uploaden, sowie diese starten und stoppen können. Die ersten vier Sachen funktionieren schon rudimentär.

      Jetzt würde ich noch gerne (genau wie im Webinterface) die Logausgaben der JS-Skripte in einem VS Code Output anzeigen. Aktuell scheitere ich aber daran, dass ich keine Logs bekomme. Versucht habe ich folgendes:

          registerForLogs() {
              if (this.client && this.isConnected) {
                  this.client.on("log", (message: any) => {
                      console.log(message);
                  });
      
                  this.client.emit("requireLog", true, (err: any) => {
                      console.log(err);
                  });
              }
          }
      

      this.client ist meine Socket.io-Verbindung, welche ich vorher aufbaue.

      Der Code wird sauber durchlaufen und es fliegt keine Exception. Ich lande allerdings auch nie in Zeile 5, sprich ich bekomme keine Logs geschickt.

      Was muss ich machen, damit ich Log-Ausgaben geschickt bekomme?

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

      @nokxs Wow, cool! Diese Extension wird sicher vielen helfen.

      Welchen socket.io verwendest du? Den von Web oder den von Admin? Es könnte sein, dass es diese Funktion nur auf dem socket.io von Admin gibt.

      Wenn du hier schaust, wie Logs empfangen werden, glaube ich, hast du alles richtig gemacht:
      https://github.com/ioBroker/adapter-react/blob/master/src/Connection.js

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

      nokxsN 1 Antwort Letzte Antwort
      0
      • UncleSamU UncleSam

        @nokxs Wow, cool! Diese Extension wird sicher vielen helfen.

        Welchen socket.io verwendest du? Den von Web oder den von Admin? Es könnte sein, dass es diese Funktion nur auf dem socket.io von Admin gibt.

        Wenn du hier schaust, wie Logs empfangen werden, glaube ich, hast du alles richtig gemacht:
        https://github.com/ioBroker/adapter-react/blob/master/src/Connection.js

        nokxsN Offline
        nokxsN Offline
        nokxs
        schrieb am zuletzt editiert von nokxs
        #3

        @UncleSam Wenn außer mir die Extension sonst noch brauchen kann, lohnt sich die Entwicklung richtig. Sobald die Extension gut genug funktioniert, kann ich die im VS Code Marketplace veröffentlichen.

        Ich weiß gar nicht ganz genau, welchen socket.io von den genannten ich genau verwende. Aktuell verwende ich den separaten socket.io Adapter (https://github.com/ioBroker/ioBroker.socketio) und dessen Standard-Port 8084.

        Die Connection.js hatte ich schon angeschaut und war deswegen auch etwas verwirrt, dass es nicht funktioniert hat.

        Mir war gar nicht bewusst, dass es verschiedene socket.io Endpunkte gibt. Wäre es sinnvoller einen anderen Endpunkt zu verwenden?

        Edit: Ich hab es gerade mit Port 8081 versucht. Ich vermute mal, dass das der socket.io Endpunkt von Admin ist. Damit hat der Codeschnippsel von mir sofort funktioniert 👍. Im Endeffekt ist das ziemlich gut, da die Extension es so nicht erfordert bestimmte Adapter installiert zu haben.

        Allerdings ist die Doku vom Socket.io-Adapter irreführend, da hier auch requireLogs beschrieben ist, obwohl es nicht funktioniert (zumindest bei mir).

        UncleSamU htreckslerH 2 Antworten Letzte Antwort
        0
        • nokxsN nokxs

          @UncleSam Wenn außer mir die Extension sonst noch brauchen kann, lohnt sich die Entwicklung richtig. Sobald die Extension gut genug funktioniert, kann ich die im VS Code Marketplace veröffentlichen.

          Ich weiß gar nicht ganz genau, welchen socket.io von den genannten ich genau verwende. Aktuell verwende ich den separaten socket.io Adapter (https://github.com/ioBroker/ioBroker.socketio) und dessen Standard-Port 8084.

          Die Connection.js hatte ich schon angeschaut und war deswegen auch etwas verwirrt, dass es nicht funktioniert hat.

          Mir war gar nicht bewusst, dass es verschiedene socket.io Endpunkte gibt. Wäre es sinnvoller einen anderen Endpunkt zu verwenden?

          Edit: Ich hab es gerade mit Port 8081 versucht. Ich vermute mal, dass das der socket.io Endpunkt von Admin ist. Damit hat der Codeschnippsel von mir sofort funktioniert 👍. Im Endeffekt ist das ziemlich gut, da die Extension es so nicht erfordert bestimmte Adapter installiert zu haben.

          Allerdings ist die Doku vom Socket.io-Adapter irreführend, da hier auch requireLogs beschrieben ist, obwohl es nicht funktioniert (zumindest bei mir).

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

          @nokxs Super, ja genau Port 8081 ist für Admin. Bitte bedenke, dass der Passwort geschützt sein kann.

          Grundsätzlich sollte der Port 8081 nicht ausserhalb Admin genutzt werden, aber deine Extension ist ja eine "Erweiterung" von Admin, deshalb sehe ich kein Problem.

          Eröffne doch ein Issue auf GitHub (im socket.io Adapter), dass Logs nicht gehen (wahrscheinlich ist das Absicht aber nicht sauber dokumentiert).

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

          nokxsN 1 Antwort Letzte Antwort
          0
          • UncleSamU UncleSam

            @nokxs Super, ja genau Port 8081 ist für Admin. Bitte bedenke, dass der Passwort geschützt sein kann.

            Grundsätzlich sollte der Port 8081 nicht ausserhalb Admin genutzt werden, aber deine Extension ist ja eine "Erweiterung" von Admin, deshalb sehe ich kein Problem.

            Eröffne doch ein Issue auf GitHub (im socket.io Adapter), dass Logs nicht gehen (wahrscheinlich ist das Absicht aber nicht sauber dokumentiert).

            nokxsN Offline
            nokxsN Offline
            nokxs
            schrieb am zuletzt editiert von
            #5

            @UncleSam Danke für deine schnelle Rückmeldung. Den Issue habe ich geschrieben und ich werde dann erst einmal Port 8081 verwenden.

            Das mit dem Passwort ist ein guter Hinweis.

            1 Antwort Letzte Antwort
            0
            • nokxsN nokxs

              @UncleSam Wenn außer mir die Extension sonst noch brauchen kann, lohnt sich die Entwicklung richtig. Sobald die Extension gut genug funktioniert, kann ich die im VS Code Marketplace veröffentlichen.

              Ich weiß gar nicht ganz genau, welchen socket.io von den genannten ich genau verwende. Aktuell verwende ich den separaten socket.io Adapter (https://github.com/ioBroker/ioBroker.socketio) und dessen Standard-Port 8084.

              Die Connection.js hatte ich schon angeschaut und war deswegen auch etwas verwirrt, dass es nicht funktioniert hat.

              Mir war gar nicht bewusst, dass es verschiedene socket.io Endpunkte gibt. Wäre es sinnvoller einen anderen Endpunkt zu verwenden?

              Edit: Ich hab es gerade mit Port 8081 versucht. Ich vermute mal, dass das der socket.io Endpunkt von Admin ist. Damit hat der Codeschnippsel von mir sofort funktioniert 👍. Im Endeffekt ist das ziemlich gut, da die Extension es so nicht erfordert bestimmte Adapter installiert zu haben.

              Allerdings ist die Doku vom Socket.io-Adapter irreführend, da hier auch requireLogs beschrieben ist, obwohl es nicht funktioniert (zumindest bei mir).

              htreckslerH Offline
              htreckslerH Offline
              htrecksler
              Forum Testing
              schrieb am zuletzt editiert von
              #6

              @nokxs sagte in Socket-IO: Log-Ausgaben empfangen:

              Wenn außer mir die Extension sonst noch brauchen kann,

              ich hätte Interesse.

              Gruss Hermann

              ioBroker auf Proxmox (Debian) auf IntelNuc als Produktivsystem

              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

              734

              Online

              32.4k

              Benutzer

              81.4k

              Themen

              1.3m

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

              • Du hast noch kein Konto? Registrieren

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