Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Warema WMS >> Adapter Neustart nach bestimmten Log Einträgen

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Warema WMS >> Adapter Neustart nach bestimmten Log Einträgen

    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      BlackTigga @DJMarc75 last edited by

      @djmarc75
      Das kann ich jetzt nicht mit Gewissheit sagen. Den DP muss ich mir dann nochmal genauer anschauen.
      Melde mich dann nochmal zurück.

      1 Reply Last reply Reply Quote 0
      • B
        BlackTigga @DJMarc75 last edited by

        @djmarc75
        Der DP liefert leider dann auch nur ein true. Kann ich also auch nichts mit triggern.

        30e69578-e79c-4c2a-a7b5-781a65b69e29-image.png

        T DJMarc75 2 Replies Last reply Reply Quote 0
        • T
          TT-Tom @BlackTigga last edited by

          @blacktigga
          spontan fällt mir da nix Neues ein. Wende dich doch mal an den Entwickler, vielleicht kann er weiterhelfen.

          1 Reply Last reply Reply Quote 0
          • DJMarc75
            DJMarc75 @BlackTigga last edited by

            @blacktigga sagte in Warema WMS >> Adapter Neustart nach bestimmten Log Einträgen:

            Der DP liefert leider dann auch nur ein true.

            Ich wage das mal zu bezweifeln 😉 Da dieser DP definitiv auf "false" geht wenn der zugehörige Adapter OFF ist.

            Kannst doch mal einfach testen wenn Du den Adapter (die Instanz) deaktivierst

            T 1 Reply Last reply Reply Quote 0
            • T
              TT-Tom @DJMarc75 last edited by

              @djmarc75
              damit bekommt er ja nicht mit, dass die Warema-Kiste die Verbindung verloren hat. Das ist doch hier das Problem, oder?

              B DJMarc75 2 Replies Last reply Reply Quote 0
              • B
                BlackTigga @TT-Tom last edited by

                @tt-tom
                ja exakt. Warema Access Point verliert immer mal wieder die Verbindung zu den Aktoren und das bekomme ich derzeitig nur über die o.g. Log Einträge mit wenn ich Werte in DP schreiben möchte.

                1 Reply Last reply Reply Quote 0
                • DJMarc75
                  DJMarc75 @TT-Tom last edited by

                  @tt-tom sagte in Warema WMS >> Adapter Neustart nach bestimmten Log Einträgen:

                  damit bekommt er ja nicht mit, dass die Warema-Kiste die Verbindung verloren hat. Das ist doch hier das Problem, oder?

                  Dann bin ich da lieber raus und lass die Elite ran 🙂

                  1 Reply Last reply Reply Quote 0
                  • B
                    BlackTigga last edited by

                    @tt-tom sagte in Warema WMS >> Adapter Neustart nach bestimmten Log Einträgen:

                    @blacktigga
                    spontan fällt mir da nix Neues ein. Wende dich doch mal an den Entwickler, vielleicht kann er weiterhelfen.

                    @tombox Kennst Du ähnliche Auffälligkeiten, dass es in Verbindung mit Nutzung des IoBroker Adapters zu Verbindungsverlsuten zwischen Warema Access Point und Warema Aktoren kommt?

                    Die Access Box wurde bei mir schon mal getauscht. Der Fehler ist geblieben, so dass Warema das Problem jetzt im Moment eher nicht bei sich sieht, sondern in Verbindung mit der Smarthome Anbindung.

                    Danke Dir für eine kurze Einschätzung/Rückinfo.

                    B DJMarc75 2 Replies Last reply Reply Quote 0
                    • B
                      BlackTigga @BlackTigga last edited by

                      In der Warema App sind dann in den beschriebenen Momenten sämtliche Schalt-Icons ausgegraut und entsprechend nicht bedienbar:

                      a23aa69d-56a3-4291-bdb7-e11d50b37501-image.png

                      1 Reply Last reply Reply Quote 0
                      • DJMarc75
                        DJMarc75 @BlackTigga last edited by

                        @blacktigga und wir sind jetzt noch beim eigentlichen "Problem" / "Thread" ? weil ...

                        @blacktigga sagte in Warema WMS >> Adapter Neustart nach bestimmten Log Einträgen:

                        n der Warema App sind dann in den beschriebenen Momenten sämtliche Schalt-Icons ausgegraut und entsprechend nicht bedienbar:

                        Wenn das eigentliche Thema erledigt ist dann bitte den Thread auf [gelöst] setzen und für Sonstiges einen neuen Beitrag aufmachen.

                        B 1 Reply Last reply Reply Quote 0
                        • B
                          BlackTigga @DJMarc75 last edited by

                          @djmarc75
                          Ja und Nein... ich wäre natürlich an der eigentlichen Ursache interessiert ansttatt mir da so eine Krücke mit Schaltsteckdose und hartem Neustart basteln zu müssen.

                          Aber dafür benötige ich immer noch einen Trigger, und derzeitig kann ich nur über die o.g. Logeinträge erkennen, dass ein Neustart erfoderlich ist. Bis jetzt noch keine Lösung für Trigger aus Logeintrag für Umsetzung in Blockly.

                          T 1 Reply Last reply Reply Quote 0
                          • T
                            TT-Tom @BlackTigga last edited by TT-Tom

                            @blacktigga

                            Probiere mal das Script, es sollte bei einer Error Meldung von der Instanz einen Datenpunkt auf true setzen, den könntest du triggern.

                            const instanzname = 'javascript';
                            const dp_userdata = '0_userdata.0.example_boolean';
                            const Debug = true;
                            
                            
                            
                            onLog('error', data => {
                                if (Debug) console.log('Fehler von: ' + data.from + ' mit Meldung: ' + data.message + ' ' + data.severity + ' ' + data.ts);
                                let loginstanzname = data.from.split('.', 1);
                                if (Debug) console.log(loginstanzname[0])
                                if (loginstanzname[0] == instanzname) {
                                    let logTimeout = null;
                                    if (logTimeout) { clearTimeout(logTimeout) };
                                    setState(dp_userdata, true, true);
                                    if (Debug) console.log('Datenpunkt ' + dp_userdata + ' gesetzt')
                                    logTimeout = setTimeout(async function () {
                                        setState(dp_userdata, false, true);
                                        if (Debug) console.log('Datenpunkt ' + dp_userdata + ' zurückgesetzt')
                                    }, 5000);
                                }
                            });
                            

                            lege dir unter 0_userdata ein Datenpunkt vom Typ Boolean an. Den Pfad dann im Script eintragen und den Instanznamen

                            EDIT: Script nochmal angepasst, nach 5s geht der Datenpunkt wieder auf false. Wenn du die Log-Meldungen nicht mehr brauchst, setzte Debug auf false.

                            1 Reply Last reply Reply Quote 0
                            • B
                              BlackTigga last edited by

                              Danke Dir für deine Hilfe.
                              Hab es jetzt so gemacht:

                              const instanzname = wmswebcontrol.0;
                              const dp_userdata = 0_userdata.0.var_Instantz_WMS_Trigger_aus_Log;
                              const Debug = true;
                               
                               
                              onLog('error', data => {
                                  if (Debug) console.log('Fehler von: ' + data.from + ' mit Meldung: ' + data.message + ' ' + data.severity + ' ' + data.ts);
                                  let loginstanzname = data.from.split('.', 1);
                                  if (Debug) console.log(loginstanzname[0])
                                  if (loginstanzname[0] == instanzname) {
                                      let logTimeout = null;
                                      if (logTimeout) { clearTimeout(logTimeout) };
                                      setState(dp_userdata, true, true);
                                      if (Debug) console.log('Datenpunkt ' + dp_userdata + ' gesetzt')
                                      logTimeout = setTimeout(async function () {
                                          setState(dp_userdata, false, true);
                                          if (Debug) console.log('Datenpunkt ' + dp_userdata + ' zurückgesetzt')
                                      }, 5000);
                                  }
                              });
                              

                              Erhalte aber eine Fehlermeldung beim Start des Skripts:

                              b7a60703-4113-4040-a948-e4feabbe356e-image.png

                              T 1 Reply Last reply Reply Quote 0
                              • T
                                TT-Tom @BlackTigga last edited by

                                @BlackTigga
                                ja ist klar, du musst auch Springs übergeben, also

                                const instanzname = 'wmswebcontrol';
                                const dp_userdata = '0_userdata.0.var_Instantz_WMS_Trigger_aus_Log';
                                

                                die "0" bleibt weg bei der Instanz

                                T 1 Reply Last reply Reply Quote 0
                                • T
                                  TT-Tom @TT-Tom last edited by

                                  @tt-tom

                                  wenn du es testen willst, bau dir ein blockly und nehme als Instanzname

                                  const instanzname = 'javascript';
                                  

                                  Bildschirmfoto 2023-06-01 um 12.20.50.png

                                  bei jedem Neustart des Blockly sollte das Script auslösen

                                  B 1 Reply Last reply Reply Quote 0
                                  • B
                                    BlackTigga @TT-Tom last edited by BlackTigga

                                    @tt-tom sagte in Warema WMS >> Adapter Neustart nach bestimmten Log Einträgen:

                                    Der Test sieht im Log jetzt so aus:. Aus meiner Sicht erstmal erfolgreich, oder?

                                    javascript.0 2023-06-01 12:48:31.612	info	script.js.common.Warema_Neustart_Trigger_aus_Log_Eintrag: Datenpunkt 0_userdata.0.var_Instantz_WMS_Trigger_aus_Log zurückgesetzt
                                    javascript.0 2023-06-01 12:48:26.609	info	script.js.common.Warema_Neustart_Trigger_aus_Log_Eintrag: Datenpunkt 0_userdata.0.var_Instantz_WMS_Trigger_aus_Log gesetzt
                                    javascript.0 2023-06-01 12:48:26.607	info	script.js.common.Warema_Neustart_Trigger_aus_Log_Eintrag: javascript
                                    javascript.0 2023-06-01 12:48:26.605	info	script.js.common.Warema_Neustart_Trigger_aus_Log_Eintrag: Fehler von: javascript.0 mit Meldung: javascript.0 (24658) script.js.common.00_Test: test error 1685616506599
                                    javascript.0 2023-06-01 12:48:26.600	info	script.js.common.00_Test: registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
                                    javascript.0 2023-06-01 12:48:26.599	error	script.js.common.00_Test: test
                                    javascript.0 2023-06-01 12:48:26.578	info	Start javascript script.js.common.00_Test
                                    javascript.0 2023-06-01 12:48:26.549	info	Stop script script.js.common.00_Test
                                    
                                    T 1 Reply Last reply Reply Quote 0
                                    • T
                                      TT-Tom @BlackTigga last edited by

                                      @blacktigga

                                      ja, so sollte es sein. Im nächsten Schritt könnte man noch die Meldung vergleichen, um nur bei einer bestimmten auszulösen.

                                      Für den Anfang sollte es aber so passen.

                                      B 1 Reply Last reply Reply Quote 0
                                      • B
                                        BlackTigga @TT-Tom last edited by

                                        @tt-tom

                                        Super, Danke Dir. Ich werde es testen und mich zurückmelden bei Erfolg/Misserfolg.

                                        1 Reply Last reply Reply Quote 1
                                        • paul53
                                          paul53 @BlackTigga last edited by paul53

                                          @blacktigga sagte: Schaltsteckdose davor geschaltet um dann in diesen Fällen das Stromlosschalten und den Neutsart automatisch durchlaufen zu lassen.

                                          Vorschlag:

                                          const idPlug = ''; // DP-ID der Steckdose eintragen!
                                          const instanz = 'wmswebcontrol.0';
                                          const msg = 'Get device status failed';
                                          
                                          var timer = null;
                                          
                                          onLog('error', data => {
                                              if(data.from  == instanz && data.message.includes(msg)) {
                                                  setState(idPlug, false); // Steckdose aus
                                                  if(timer) clearTimeout(timer);
                                                  timer = setTimeout(function () {
                                                      setState(idPlug, true); // Steckdose ein
                                                  }, 5000);
                                              }
                                          });
                                          
                                          B 1 Reply Last reply Reply Quote 0
                                          • B
                                            BlackTigga @paul53 last edited by

                                            @paul53

                                            Hi, vielen Dank für die Erweiterung. Ich bin kein Experte für Coding, aber vorgefertigte Skripte bekomme ich der Regel dann irgendwie eingebunden. Dennoch versuche ich zumindest immer den Code ein weinig zu "verstehen".

                                            Was ich ier noch nicht ganz verstanden habe, wodurch genau dein Skript jetzt angetriggert wird.
                                            Es muss ja hiermit zu tun haben:
                                            if(data.from == instanz && data.message.includes(msg)) wobei msg als Konstante mit 'Get device status failed' deklariert ist. Zu welchem Zeitpunkt haben wir denn die Meldung 'Get device status failed' irgendwo anstehen damit das in diesem Skript verarbeitet werden kann?

                                            Und muss in ein separates Skript eingefügt werden?

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

                                            Support us

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

                                            1.1k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

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