Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. [Adapter] Sonoff- Tasmota

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.0k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

[Adapter] Sonoff- Tasmota

Scheduled Pinned Locked Moved Tester
720 Posts 75 Posters 266.2k Views 8 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • ChaotC Offline
    ChaotC Offline
    Chaot
    wrote on last edited by
    #406

    Ich habe in Zeile 67 eine Fehlermeldung: "Don't make functions within a loop"

    ioBroker auf NUC unter Proxmox; VIS: 12" Touchscreen und 17" Touch; Lichtsteuerung, Thermometer und Sensoren: Tasmota (39); Ambiente Beleuchtung: WLED (9); Heizung: DECT Thermostate (9) an Fritz 6690; EMS-ESP; 1 Echo V2; 3 Echo DOT; 1 Echo Connect; 2 Echo Show 5; Unifi Ap-Ac Lite.

    1 Reply Last reply
    0
    • modmaxM Offline
      modmaxM Offline
      modmax
      wrote on last edited by
      #407

      Hab ich auch … :-

      Ist aber nur ne Warnung .... Kein Fehler .... Und funktioniert trotzdem

      1 Reply Last reply
      0
      • B Offline
        B Offline
        Balu0127
        wrote on last edited by
        #408

        Hab glaub ich was verpasst?

        Wo schreib ihr das Script hin?

        1 Reply Last reply
        0
        • ChaotC Offline
          ChaotC Offline
          Chaot
          wrote on last edited by
          #409

          Ja, die Funktion ist da. Ich wollte nur darauf hinweisen.

          Mal sehen ob das jetzt besser wird.

          Wobei ich immer noch meine Fritzbox im Verdacht habe. Die ist kaum noch zu bedienen seit IOBroker läuft.

          ioBroker auf NUC unter Proxmox; VIS: 12" Touchscreen und 17" Touch; Lichtsteuerung, Thermometer und Sensoren: Tasmota (39); Ambiente Beleuchtung: WLED (9); Heizung: DECT Thermostate (9) an Fritz 6690; EMS-ESP; 1 Echo V2; 3 Echo DOT; 1 Echo Connect; 2 Echo Show 5; Unifi Ap-Ac Lite.

          1 Reply Last reply
          0
          • modmaxM Offline
            modmaxM Offline
            modmax
            wrote on last edited by
            #410

            @Bluefox

            Ich hab mir mal den AdapterCode angesehen und da ist mir (vielleicht) etwas aufgefallen.

            Vielleicht kannst Du da den Fehler erkennen .. oder ich habe noch nicht die Logik von Javascript und Adaptern komplett kapiert.

            Oder meine Erkenntnisse sind voll daneben oder passen eben nicht; und bei asynchronem Javascript passe ich eh meistens.

            Ist ab Zeile 467 in der "lib/server.js" zu finden.

                        client.on('disconnect', function (/*packet*/) {
                            if (client._sendOnStart) {
                                clearTimeout(client._sendOnStart);
                                client._sendOnStart = null;
                            }
                            adapter.log.info('Client [' + client.id + '] disconnected');
                            client.stream.end();
                            if (clients[client.id]) {
                                delete clients[client.id];
                                sendLWT(client);
                                updateClients();
                            }
                        });
            
                        client.on('close', function (had_error) {
                            if (client._sendOnStart) {
                                clearTimeout(client._sendOnStart);
                                client._sendOnStart = null;
                            }
                            if (had_error) adapter.log.error('Closed because of error');
                            adapter.log.info('Client [' + client.id + '] closed');
                            if (clients[client.id]) {
                                delete clients[client.id];
                                sendLWT(client);
                                updateClients();
                            }
                        });
            
                        client.on('error', function (err) {
                            if (client._sendOnStart) {
                                clearTimeout(client._sendOnStart);
                                client._sendOnStart = null;
                            }
                            adapter.log.warn('Client error [' + client.id + ']: ' + err);
            
                            if (!clients[client.id]) return;
            
                            delete clients[client.id];
                            sendLWT(client, function () {
                                updateClients();
                                client.stream.end();
                            });
            	});
            
            

            1.) Nur ne Kleinigkeit: in der client.on('error',…) die Zeile

            adapter.log.warn('Client error [' + client.id + ']: ' + err);
            

            hinter die Zeile

             if (!clients[client.id]) return;
            

            setzen.

            Dann würde die Fehlermeldung nur einmal ausgegeben.

            2.) Die sendLWT-Befehle sind mir noch irgendwie fremd, bzw. der Ablauf nicht ganz klar,

            aber die werden in den 3 Methoden anders aufgerufen.

            bei "disconnect" und "close". nämlich so:

            if (clients[client.id]) {
                delete clients[client.id];
                sendLWT(client);
                updateClients();
            }
            
            

            Bei "error" aber mittels callback:

            delete clients[client.id];
                sendLWT(client, function () {
                    updateClients();
                    client.stream.end();
                };
            });
            
            

            Ich würde für alle 3 Fälle disconnect,close,error erwarten, daß sowas ausreichen würde.

            if (clients[client.id]) {
                delete clients[client.id];
                updateClients();
                sendLWT(client);
            }
            
            

            Also erst Stream schließen, dann Client aus Liste löschen und dann erst LWT wieder senden.

            Sind wie gesagt nur meine Erkenntnisse und ich bin auch kein Experte in Javascript,

            aber es fiel mir eben ins Auge und deswegen die Frage ob das "nicht wiederverbinden"

            wie hier im Thread auf den letzten Seiten beschrieben ist evtl. auf das Handling von "error" zurückzuführen ist.

            Testen kann ich das aktuell auch nicht wirklich, sondern habe mich anhander

            der hier geposteten Logfiles da durch gehangelt.

            MfG Markus

            1 Reply Last reply
            0
            • modmaxM Offline
              modmaxM Offline
              modmax
              wrote on last edited by
              #411

              @Skript-Benutzer

              Wie ich selber feststellen mußte funktioniert mein Skript zu gut.

              Es triggert auch, wenn der Sonoff-Adapter geschlossen wird,

              da dann auch die connections zurückgesetzt werden.

              Daher müßte man das Skript folgendermaßen ergänzen:

              ....
              // bei Änderung an connections auslösen
              on('sonoff.0.info.connection', function (obj) {
              
                  if (getState('system.adapter.sonoff.0.alive').val === false) {
                      // Sonoff-Adapter gestoppt; nichts zu tun
                      return;
                  }
              ....
              
              
              1 Reply Last reply
              0
              • T Offline
                T Offline
                TimmBo
                wrote on last edited by
                #412

                Soeben ist das Skript zum Einsatz gekommen.

                Hat 1a funktioniert.

                  sonoff.0	2018-03-13 19:27:03.577	info	Client [Musik_Wohnzimmer] connected
                javascript.0	2018-03-13 19:26:56.123	info	script.js.scripte.Sonoff.Sonoff_restart: Neustart von Sonoff: Musik_Wohnzimmer
                sonoff.0	2018-03-13 19:23:56.083	warn	Client error [Musik_Wohnzimmer]: Error: This socket has been ended by the other party
                sonoff.0	2018-03-13 19:23:56.083	warn	Client error [Musik_Wohnzimmer]: Error: This socket has been ended by the other party
                sonoff.0	2018-03-13 19:23:56.082	warn	Client error [Musik_Wohnzimmer]: Error: This socket has been ended by the other party
                sonoff.0	2018-03-13 19:23:56.081	warn	Client error [Musik_Wohnzimmer]: Error: This socket has been ended by the other party
                sonoff.0	2018-03-13 19:23:56.081	warn	Client error [Musik_Wohnzimmer]: Error: This socket has been ended by the other party
                sonoff.0	2018-03-13 19:23:56.080	warn	Client error [Musik_Wohnzimmer]: Error: This socket has been ended by the other party    
                

                Vielen Dank!

                Hoffe trotzdem das Bluefox etwas Zeit hat um sich den Adapter mal anzusehen.

                Mfg Timm

                1 Reply Last reply
                0
                • WalW Offline
                  WalW Offline
                  Wal
                  Developer
                  wrote on last edited by
                  #413

                  Im Github vom Tasmota hatten einige Probleme mit Neustarts und haben eine Lösung gefunden.

                  https://github.com/arendst/Sonoff-Tasmota/issues/2149

                  Gruß
                  Walter

                  DoorIO-Adapter
                  wioBrowser-Adapter und wioBrowser

                  1 Reply Last reply
                  0
                  • modmaxM Offline
                    modmaxM Offline
                    modmax
                    wrote on last edited by
                    #414

                    Danke für die Info Walter,

                    das Problem dort betrifft aber nur Neustarts und DNS-Auflösung;

                    also Eingabe von IP (192.168.12.12) statt Name (iobroker.myhost.de) wäre dann zu verwenden.

                    Hier in diesem Thread geht es aber um Verlust der Connection aus undefinierten Gründen.

                    Das Problem ist hier, daß ioBroker zu jedem Sonoff eine dauerhafte Verbindung (Input- und Outputstream),

                    aufrecht erhält; aber nicht mitkriegt, wenn dieser Stream aus netztechnischen Gründen abbricht

                    (z.B. WLAN-Aussetzer, abrupter Stromverlust eines Sonoffs etc. pp).

                    Der sonoff-Adapter baut dann keine neue Connection auf, denn dies ist Aufgabe des Clients.

                    Doch der Client (also Sonoff) sendet ja was, aber der Sonoff-Adapter kriegt reagiert darauf nicht korrekt;

                    so daß nur ein Neustart des Sonoff hilft … oder des Sonoff-Adapters.

                    MfG Markus

                    1 Reply Last reply
                    0
                    • BluefoxB Offline
                      BluefoxB Offline
                      Bluefox
                      wrote on last edited by
                      #415

                      Bitte 2.0.0 direkt vom github ausprobieren?

                      1 Reply Last reply
                      0
                      • K Offline
                        K Offline
                        klassisch
                        Most Active
                        wrote on last edited by
                        #416

                        Herzlichen Dank @bluefox für Deine Mühe.

                        Habe den 2.0.0 installiert. Man kann eine timeout Zeit einstellen, 300sec ist default.

                        Grundfunktion ist gegeben.

                        Habe einen "remote Sonoff", der über VPN angebunden ist. Habe jetzt mal VPN unterbrochen, um festzustellen, was bei einer Verbindungsstörung passiert.

                        1 Reply Last reply
                        0
                        • K Offline
                          K Offline
                          klassisch
                          Most Active
                          wrote on last edited by
                          #417

                          Bei meinen Tests funktioniert es nun.

                          Habe den VPN Tunnel zu meinem remote Sonoff geschlossen. Der Verbindungsabbruch wurde registriert und dieser Sonoff nicht mehr alle 15 sec angepingt.

                          Habe die Unterbrechung > 10 min aufrecht erhalten, so daß der Sonoff sicher einen vergeblichen Sendeversuch unternommen hat. Mit dem alten Adapter hat er ab da nicht mehr auf Sonoff Kommandos reagiert.

                          Nach dem Wiederherstellen des VPN-Tunnels hat der Adapter den Sonoff wieder verbunden und konnte ihn ansteuern.

                          Ändert man whrend der Unterbrechung den Schaltzustand im Adapter geht der korrekterweise auf rot. Nach Wiederherstellen der Verbindung dauert es einige Minuten, bis sich die Schaltstellung wieder selbstständig synchronisiert und wieder schwarz wird.

                          Beim Umstellen des Adapters von debug auf info bekam ich einige Fehlermeldungen. Vielleicht sind bei mir einige Systemkomponenten zu alt.

                          ! sonoff.0 2018-03-16 23:22:25.108 info starting. Version 2.0.0 in /opt/iobroker/node_modules/iobroker.sonoff, node: v6.13.1 host.orangepiplus2e 2018-03-16 23:22:21.654 info instance system.adapter.sonoff.0 started with pid 2065 host.orangepiplus2e 2018-03-16 23:22:20.287 info instance system.adapter.sonoff.0 terminated with code 6 (uncaught exception) Caught 2018-03-16 23:22:20.286 error by controller[9]: 2018-03-16 23:22:19.171 - debug: sonoff.0 stateChange sonoff.0.SonoffS20-01.alive: {"val":false,"ack":true,"ts":1521238939099,"q":0,"from":"system.adapter.sonoff.0","lc":1521238939 Caught 2018-03-16 23:22:20.286 error by controller[8]: at Manager.ondata (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:322:16) Caught 2018-03-16 23:22:20.285 error by controller[8]: at Decoder.add (/opt/iobroker/node_modules/socket.io-parser/index.js:246:12) Caught 2018-03-16 23:22:20.284 error by controller[8]: at Decoder.Emitter.emit (/opt/iobroker/node_modules/component-emitter/index.js:134:20) Caught 2018-03-16 23:22:20.284 error by controller[8]: at Decoder. (/opt/iobroker/node_modules/component-bind/index.js:21:15) Caught 2018-03-16 23:22:20.283 error by controller[8]: at Manager.ondecoded (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:332:8) Caught 2018-03-16 23:22:20.283 error by controller[8]: at Manager.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20) Caught 2018-03-16 23:22:20.282 error by controller[8]: at Manager. (/opt/iobroker/node_modules/component-bind/index.js:21:15) Caught 2018-03-16 23:22:20.281 error by controller[8]: at Socket.onpacket (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:236:12) Caught 2018-03-16 23:22:20.280 error by controller[8]: at Socket.onack (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:312:9) Caught 2018-03-16 23:22:20.280 error by controller[8]: at Socket.adapter.setForeignState (/opt/iobroker/node_modules/iobroker.sonoff/lib/server.js:30:36) Caught 2018-03-16 23:22:20.279 error by controller[8]: 2018-03-16 23:22:19.166 - sonoff.0 TypeError: server.destroy is not a function Caught 2018-03-16 23:22:20.278 error by controller[7]: 2018-03-16 23:22:19.162 - sonoff.0 uncaught exception: server.destroy is not a function Caught 2018-03-16 23:22:20.278 error by controller[6]: at Manager.ondata (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:322:16) Caught 2018-03-16 23:22:20.277 error by controller[6]: at Decoder.add (/opt/iobroker/node_modules/socket.io-parser/index.js:246:12) Caught 2018-03-16 23:22:20.271 error by controller[6]: at Decoder.Emitter.emit (/opt/iobroker/node_modules/component-emitter/index.js:134:20) Caught 2018-03-16 23:22:20.270 error by controller[6]: at Decoder. (/opt/iobroker/node_modules/component-bind/index.js:21:15) Caught 2018-03-16 23:22:20.270 error by controller[6]: at Manager.ondecoded (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:332:8) Caught 2018-03-16 23:22:20.269 error by controller[6]: at Manager.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20) Caught 2018-03-16 23:22:20.269 error by controller[6]: at Manager. (/opt/iobroker/node_modules/component-bind/index.js:21:15) Caught 2018-03-16 23:22:20.268 error by controller[6]: at Socket.onpacket (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:236:12) Caught 2018-03-16 23:22:20.267 error by controller[6]: at Socket.onack (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:312:9) Caught 2018-03-16 23:22:20.267 error by controller[6]: at Socket.adapter.setForeignState (/opt/iobroker/node_modules/iobroker.sonoff/lib/server.js:30:36) Caught 2018-03-16 23:22:20.266 error by controller[6]: TypeError: server.destroy is not a function Caught 2018-03-16 23:22:20.265 error by controller[5]: 2018-03-16 23:22:19.102 - debug: sonoff.0 stateChange sonoff.0.TestSonPow.alive: {"val":false,"ack":true,"ts":1521238939092,"q":0,"from":"system.adapter.sonoff.0","lc":152123893909 Caught 2018-03-16 23:22:20.265 error by controller[4]: 2018-03-16 23:22:14.865 - debug: sonoff.0 Client [TestSonPow] pingreq Caught 2018-03-16 23:22:20.264 error by controller[3]: 2018-03-16 23:22:11.565 - debug: sonoff.0 Client [SonoffS20-01] pingreq Caught 2018-03-16 23:22:20.263 error by controller[2]: 2018-03-16 23:21:59.864 - debug: sonoff.0 Client [TestSonPow] pingreq Caught 2018-03-16 23:22:20.260 error by controller[1]: 2018-03-16 23:21:56.564 - debug: sonoff.0 Client [SonoffS20-01] pingreq sonoff.0 2018-03-16 23:22:19.170 debug stateChange sonoff.0.SonoffS20-01.alive: {"val":false,"ack":true,"ts":1521238939099,"q":0,"from":"system.adapter.sonoff.0","lc":1521238939099} sonoff.0 2018-03-16 23:22:19.166 error at Manager.ondata (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:322:16) sonoff.0 2018-03-16 23:22:19.166 error at Decoder.add (/opt/iobroker/node_modules/socket.io-parser/index.js:246:12) sonoff.0 2018-03-16 23:22:19.166 error at Decoder.Emitter.emit (/opt/iobroker/node_modules/component-emitter/index.js:134:20) sonoff.0 2018-03-16 23:22:19.166 error at Decoder. (/opt/iobroker/node_modules/component-bind/index.js:21:15) sonoff.0 2018-03-16 23:22:19.166 error at Manager.ondecoded (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:332:8) sonoff.0 2018-03-16 23:22:19.166 error at Manager.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20) sonoff.0 2018-03-16 23:22:19.166 error at Manager. (/opt/iobroker/node_modules/component-bind/index.js:21:15) sonoff.0 2018-03-16 23:22:19.166 error at Socket.onpacket (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:236:12) sonoff.0 2018-03-16 23:22:19.166 error at Socket.onack (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:312:9) sonoff.0 2018-03-16 23:22:19.166 error at Socket.adapter.setForeignState (/opt/iobroker/node_modules/iobroker.sonoff/lib/server.js:30:36) sonoff.0 2018-03-16 23:22:19.166 error TypeError: server.destroy is not a function sonoff.0 2018-03-16 23:22:19.161 error uncaught exception: server.destroy is not a function sonoff.0 2018-03-16 23:22:19.101 debug stateChange sonoff.0.TestSonPow.alive: {"val":false,"ack":true,"ts":1521238939092,"q":0,"from":"system.adapter.sonoff.0","lc":1521238939092} host.orangepiplus2e 2018-03-16 23:22:19.027 info stopInstance system.adapter.sonoff.0 killing pid 27739 host.orangepiplus2e 2018-03-16 23:22:19.024 info stopInstance system.adapter.sonoff.0 host.orangepiplus2e 2018-03-16 23:22:18.994 info object change system.adapter.sonoff.0 !

                          1 Reply Last reply
                          0
                          • BluefoxB Offline
                            BluefoxB Offline
                            Bluefox
                            wrote on last edited by
                            #418

                            Ok. Fixed on github. Version ist die gleiche.

                            1 Reply Last reply
                            0
                            • K Offline
                              K Offline
                              klassisch
                              Most Active
                              wrote on last edited by
                              #419

                              Danke, jetzt sind es deutlich weniger Fehler beim Umstellen auf info:

                              ! ````
                              sonoff.0 2018-03-17 00:31:05.693 info Client [SonoffS20-01] connected
                              sonoff.0 2018-03-17 00:31:05.655 info Client [TestSonPow] connected
                              sonoff.0 2018-03-17 00:30:59.452 info Starting MQTT authenticated server on port 1500
                              sonoff.0 2018-03-17 00:30:59.308 info starting. Version 2.0.0 in /opt/iobroker/node_modules/iobroker.sonoff, node: v6.13.1
                              host.orangepiplus2e 2018-03-17 00:30:55.924 info instance system.adapter.sonoff.0 started with pid 17259
                              host.orangepiplus2e 2018-03-17 00:30:53.979 info instance system.adapter.sonoff.0 terminated with code 0 (OK)
                              Caught 2018-03-17 00:30:53.978 error by controller[6]: 2018-03-17 00:30:53.435 - debug: sonoff.0 stateChange sonoff.0.TestSonPow.alive: {"val":false,"ack":true,"ts":1521243053402,"q":0,"from":"system.adapter.sonoff.0","lc":152124305340
                              Caught 2018-03-17 00:30:53.977 error by controller[5]: 2018-03-17 00:30:53.417 - debug: sonoff.0 stateChange sonoff.0.SonoffS20-01.alive: {"val":false,"ack":true,"ts":1521243053395,"q":0,"from":"system.adapter.sonoff.0","lc":1521243053
                              Caught 2018-03-17 00:30:53.976 error by controller[4]: 2018-03-17 00:30:42.411 - debug: sonoff.0 Client [SonoffS20-01] pingreq
                              Caught 2018-03-17 00:30:53.975 error by controller[3]: 2018-03-17 00:30:42.280 - debug: sonoff.0 Client [TestSonPow] pingreq
                              Caught 2018-03-17 00:30:53.974 error by controller[2]: 2018-03-17 00:30:27.411 - debug: sonoff.0 Client [SonoffS20-01] pingreq
                              Caught 2018-03-17 00:30:53.972 error by controller[1]: 2018-03-17 00:30:27.283 - debug: sonoff.0 Client [TestSonPow] pingreq
                              sonoff.0 2018-03-17 00:30:53.899 info terminating
                              sonoff.0 2018-03-17 00:30:53.434 debug stateChange sonoff.0.TestSonPow.alive: {"val":false,"ack":true,"ts":1521243053402,"q":0,"from":"system.adapter.sonoff.0","lc":1521243053402}
                              sonoff.0 2018-03-17 00:30:53.416 debug stateChange sonoff.0.SonoffS20-01.alive: {"val":false,"ack":true,"ts":1521243053395,"q":0,"from":"system.adapter.sonoff.0","lc":1521243053395}
                              host.orangepiplus2e 2018-03-17 00:30:53.363 info stopInstance system.adapter.sonoff.0 killing pid 17040
                              host.orangepiplus2e 2018-03-17 00:30:53.358 info stopInstance system.adapter.sonoff.0
                              host.orangepiplus2e 2018-03-17 00:30:53.354 info object change system.adapter.sonoff.0

                              1 Reply Last reply
                              0
                              • modmaxM Offline
                                modmaxM Offline
                                modmax
                                wrote on last edited by
                                #420

                                Hi @Bluefox,

                                erstmal Danke für den schnellen Fix.

                                Den Streamserver haste ja rausgeschmissen.

                                Ich hatte selber bei mir eine von mir umgebaute server.js laufen,

                                die im Grunde dem entsprach,w as Du umgesetzt hast.

                                Anstatt eines Timeouts auf dem Stream hatte ich aber bei einem pingreq den pingresp

                                unterdrückt, wenn der Client geschlossen war.

                                Also sowas in der Art:

                                client.on('pingreq', (/*packet*/) => {
                                    if (clients[client.id]) {
                                        adapter.log.debug('Client [' + client.id + '] pingreq');
                                        client.pingresp();
                                    }
                                });
                                
                                

                                Das sollte dafür sorgen, daß bei einem "close" kein ping mehr

                                für den Stream eines geschlossenen Clients geschrieben werden sollte.

                                Sorgte im Endeffekt aber dafür, daß der Client nochmals geschlossen wurde,

                                das erste Mal durch den "socket has closed by other party" (ErrorCode: EPIPE),

                                um danach gleich nochmal wegen des Pings geschlossen zu werden .. :-)

                                Bin halt kein Javascript-Experte … sondern nur echtem Java.

                                Ist wahrscheinlich auch falsch gewesen an der Stelle aber war eben ein Test von mir ...

                                Hab nun die Installation auf das neueste 2.0.0 geupdatet und lasse das mal so laufen

                                und schau was passiert.

                                Daß der Fehler mit WLAN-Qualität zu tun haben soll, kann ich auch nur bedingt bestätigen.

                                Hab selber eine Fritzbox 7490, sowie einen Fritzbox WLAN-Repeater 1150 im Einsatz (als MESH-Netz).

                                Nachts schalte ich das Gast-WLAN per TR64-Adapter immer aus; und dann haben sich

                                die Sonoffs, die am Repeater hingen auch netztechnisch verabschiedet.

                                Ich denke, daß es hier auch Unterbrechungen geben kann, die auf die Router/Repeater-Hardware

                                zurückzuführen ist.

                                Beim Anschalten des Gast-WLANs am Morgen gibt es dagegen keine Probleme.

                                MfG Markus

                                1 Reply Last reply
                                0
                                • T Offline
                                  T Offline
                                  TimmBo
                                  wrote on last edited by
                                  #421

                                  Danke für die Mühe.

                                  Hab das Skript vom Marcus deaktiviert und den Adapter aktualisiert. Bei der Installation gab es einige fehler

                                  ! ````
                                  npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1
                                  iobroker 2018-03-17 07:12:38.340 info WARN optional SKIPPING OPTIONAL DEPENDENCY: authenticate-pam@1.0.2 (node_modules/authenticate-pam):npm WARN optional SKIPPING OPTIONAL DEPENDENCY: authenticate-pam@1.0.2 install: node-gyp rebuild
                                  iobroker 2018-03-17 07:12:38.335 info npm
                                  iobroker 2018-03-17 07:12:16.800 info gyp ERR! not ok
                                  iobroker 2018-03-17 07:12:16.800 info gyp ERR! node-gyp -v v3.4.0
                                  iobroker 2018-03-17 07:12:16.800 info gyp ERR! node -v v6.11.5
                                  iobroker 2018-03-17 07:12:16.800 info gyp ERR! cwd /opt/iobroker/node_modules/authenticate-pam
                                  iobroker 2018-03-17 07:12:16.800 info gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
                                  iobroker 2018-03-17 07:12:16.800 info gyp ERR! System Linux 4.9.59-v7+
                                  iobroker 2018-03-17 07:12:16.800 info gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:219:12)
                                  iobroker 2018-03-17 07:12:16.800 info gyp ERR! stack at ChildProcess.emit (events.js:191:7)
                                  iobroker 2018-03-17 07:12:16.800 info gyp ERR! stack at emitTwo (events.js:106:13)
                                  iobroker 2018-03-17 07:12:16.800 info gyp ERR! stack at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:276:23)
                                  iobroker 2018-03-17 07:12:16.800 info ERR! build error gyp ERR! stack Error: make failed with exit code

                                  
                                  Der Adapter funktioniert aber.
                                  
                                  Ich halte euch auf dem laufenden.
                                  
                                  Schönes Wochenende
                                  
                                  Timm
                                  1 Reply Last reply
                                  0
                                  • K Offline
                                    K Offline
                                    klassisch
                                    Most Active
                                    wrote on last edited by
                                    #422

                                    So ähnliche Fehler hatte ich auch. Ist bei mir sehr oft der Fall. Ich vermute mal, weil ich einen Orange Pi mit armbian nutze. Wahrscheinlich ist da der Zusammenbau der Pakete komplizierter und es muß meistens etwas compiliert werden.

                                    Aber das sind nur Mutmassungen von mir, keinnen mich in den Tiefen der embedded Linuxwelt nicht aus.

                                    1 Reply Last reply
                                    0
                                    • T Offline
                                      T Offline
                                      TimmBo
                                      wrote on last edited by
                                      #423

                                      Bei mir steigen immer noch einige sonoff aus und sind dann nicht mehr übern Broker zu erreichen.

                                      ! ````
                                      2018-03-17 09:47:13.424 warn Client error [Terrasse_mitte]: Error: This socket has been ended by the other party
                                      sonoff.0 2018-03-17 09:47:13.423 warn Client error [Terrasse_mitte]: Error: This socket has been ended by the other party
                                      sonoff.0 2018-03-17 09:47:13.423 warn Client error [Terrasse_mitte]: Error: This socket has been ended by the other party
                                      sonoff.0 2018-03-17 09:47:13.423 warn Client error [Terrasse_mitte]: Error: This socket has been ended by the other party
                                      sonoff.0 2018-03-17 09:47:13.423 warn Client error [Terrasse_mitte]: Error: This socket has been ended by the other party
                                      sonoff.0 2018-03-17 09:47:13.423 warn Client error [Terrasse_mitte]: Error: This socket has been ended by the other party
                                      sonoff.0 2018-03-17 09:47:13.422 info Client [Terrasse_mitte] closed
                                      sonoff.0 2018-03-17 09:47:06.033 info Client [Terrasse_mitte] connected
                                      sonoff.0 2018-03-17 09:34:47.010 warn Client "Toaster" not connected
                                      host.raspberrypi 2018-03-17 09:30:05.668 info instance system.adapter.dwd.0 terminated with code 0 (OK)
                                      host.raspberrypi 2018-03-17 09:30:00.105 info instance system.adapter.dwd.0 started with pid 26881
                                      host.raspberrypi 2018-03-17 09:12:09.552 info instance system.adapter.weatherunderground.0 terminated with code 0 (OK)
                                      host.raspberrypi 2018-03-17 09:12:00.117 info instance system.adapter.weatherunderground.0 started with pid 25978
                                      host.raspberrypi 2018-03-17 09:00:05.608 info instance system.adapter.dwd.0 terminated with code 0 (OK)
                                      host.raspberrypi 2018-03-17 09:00:00.117 info instance system.adapter.dwd.0 started with pid 25383
                                      sonoff.0 2018-03-17 08:52:23.475 warn Client "Toaster" not connected
                                      sonoff.0 2018-03-17 08:52:20.802 warn Client "Toaster" not connected
                                      sonoff.0 2018-03-17 08:47:55.441 warn Client error [Toaster]: Error: This socket has been ended by the other party
                                      sonoff.0 2018-03-17 08:47:55.440 warn Client error [Toaster]: Error: This socket has been ended by the other party
                                      sonoff.0 2018-03-17 08:47:55.440 warn Client error [Toaster]: Error: This socket has been ended by the other party
                                      sonoff.0 2018-03-17 08:47:55.439 warn Client error [Toaster]: Error: This socket has been ended by the other party
                                      sonoff.0 2018-03-17 08:47:55.439 warn Client error [Toaster]: Error: This socket has been ended by the other party
                                      sonoff.0 2018-03-17 08:47:55.438 warn Client error [Toaster]: Error: This socket has been ended by the other party
                                      sonoff.0 2018-03-17 08:47:55.437 info Client [Toaster] closed
                                      sonoff.0 2018-03-17 08:46:33.307 info Client [Toaster] connected
                                      host.raspberrypi 2018-03-17 08:30:05.824 info instance system.adapter.dwd.0 terminated with code 0 (OK)
                                      host.raspberrypi 2018-03-17 08:30:00.100 info instance system.adapter.dwd.0 started with pid 23910
                                      sonoff.0 2018-03-17 08:15:26.426 info Client [Terrasse_rechts] connected
                                      sonoff.0 2018-03-17 08:15:25.318 warn Client error [Terrasse_rechts]: Error: This socket has been ended by the other party
                                      sonoff.0 2018-03-17 08:15:25.318 warn Client error [Terrasse_rechts]: Error: This socket has been ended by the other party
                                      sonoff.0 2018-03-17 08:15:25.313 warn Client error [Terrasse_rechts]: Error: This socket has been ended by the other party
                                      sonoff.0 2018-03-17 08:15:25.313 warn Client error [Terrasse_rechts]: Error: This socket has been ended by the other party
                                      sonoff.0 2018-03-17 08:15:25.312 warn Client error [Terrasse_rechts]: Error: This socket has been ended by the other party
                                      sonoff.0 2018-03-17 08:15:25.311 warn Client error [Terrasse_rechts]: Error: This socket has been ended by the other party
                                      sonoff.0 2018-03-17 08:15:25.303 info Client [Terrasse_rechts] closed
                                      host

                                      1 Reply Last reply
                                      0
                                      • K Offline
                                        K Offline
                                        klassisch
                                        Most Active
                                        wrote on last edited by
                                        #424

                                        Läuft bei Dir die 2.0.0?

                                        Der party-Fehler kam bei mir gar nicht mehr.

                                        Bei mir kam "sonoff.0 Client [SonoffS20-01] timeout"

                                        oder "sonoff.0 Client [SonoffS20-01] closed"

                                        Stelle das Adapter-Log mal auf debug. Dann sieht man auch die Pings alle 15 sec.

                                        1 Reply Last reply
                                        0
                                        • T Offline
                                          T Offline
                                          TimmBo
                                          wrote on last edited by
                                          #425

                                          Ja es läuft die 2.0.0

                                          Hatte den Party fehler zum teil über 24h gar nicht mit der 1.0.0.

                                          Kann also gut sein das du noch etwas warten musst.

                                          Mfg Timm

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          322

                                          Online

                                          32.7k

                                          Users

                                          82.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe