Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Zigbee-Überwachung nicht mehr möglich

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Zigbee-Überwachung nicht mehr möglich

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      sebastian0010 last edited by

      Liebe Leute,

      ich habe nach einem iobroker-Umzug auf den Raspi4 leider ein Problem. Insgesamt habe ich jetzt wohl teilweise neuere Adapterversionen, weshalb mein Skript, welches zuvor problemlos funktioniert hat, nun nicht mehr geht. Es handelt sich um ein Script zur Überwachung der Zigbeegeräte, ob diese online sind.
      Leider erkennt das Skript weder die aktiven, noch die inaktiven Geräte. Zuvor wurden entsprechend dem Skript alle Geräte gezählt und dann die offline-Geräte angezeigt.

      createState('zigbeestatus.Anzahl_Geräte', 0, {type: 'number'});
      createState('zigbeestatus.offline', 0, {type: 'number'});
      createState('zigbeestatus.Gerät', " ", {type: 'string'});
      
      
      const zigbee = $('zigbee.0*.link_quality');
      const loggen = true;
      
      var arrOFFLINE;
      
      function offline(id){
          id = id.substring(0, id.lastIndexOf('.'));
          var name = getObject(id).common.name;
          arrOFFLINE.push(name);
          if(loggen) log("Gerät: " + name);
      }
      
      function countOffline() {
         var moeglicheOFFLINE = 0;
         arrOFFLINE =[];
         zigbee.each(function (id, i){
         if(id != 'zigbee.0.90fdxxxxxxxxxxxxd.link_quality' && id != 'zigbee.0.90fdxxxxxxxxxx.link_quality' && Math.round((Date.now() - new Date(getState(id).ts)) / 1000 / 60) > 60) offline(id);
          ++moeglicheOFFLINE;
         });
         
         if(loggen) log("Text: "+arrOFFLINE.join(', '));
         if(loggen) log("Anzahl Geräte: " + moeglicheOFFLINE + " // davon offline: " + arrOFFLINE.length);
         
         setState("zigbeestatus.Gerät",     arrOFFLINE.join(',<br>'));
         setState("zigbeestatus.offline",   arrOFFLINE.length);
         setState("zigbeestatus.Anzahl_Geräte", moeglicheOFFLINE);
      
      }
      
      countOffline();
      
      schedule("0 */2 * * *", countOffline);
      

      Kann mir hier jemand weiterhelfen?
      Zigbee-V.: 0.10.2
      JS/Blockly 4.1.12
      js-controller 2.1.1

      Liebe Grüße und vielen Dank gleich mal!

      paul53 2 Replies Last reply Reply Quote 0
      • paul53
        paul53 @sebastian0010 last edited by

        @sebastian0010
        Funktioniert der $Selector ? Bitte in einem Testskript testen:

        $('zigbee.0*.link_quality').each(function(id, i) {log(id);});
        
        1 Reply Last reply Reply Quote 0
        • S
          sebastian0010 last edited by

          Es scheint nicht so:
          script.js.x.Test: registered 0 subscriptions and 0 schedules
          Woran könnte das liegen?

          Unter den Objekten habe ich zigbee.0 so vorliegen und link_quality haben auch alle Zigbeeobjekte.

          Danke und LG
          Sebastian

          1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @sebastian0010 last edited by

            @sebastian0010 sagte:

            JS/Blockly 4.1.12
            js-controller 2.1.1

            Vielleicht macht diese Kombination Probleme ? Versuche es mal mit einem JS-Adapter aus latest (4.3.4).

            1 Reply Last reply Reply Quote 0
            • S
              sebastian0010 last edited by

              Vielen Dank für den Hinweis, das Skript funktioniert jetzt wieder.
              Allerdings kommt es jetzt im Skript zu fehlern:
              20:08:22.702 warn javascript.0 (1600) at script.js.Ueberwachen.Zigbeestatus:29:141
              20:08:22.703 warn javascript.0 (1600) at countOffline (script.js.Ueberwachen.Zigbeestatus:28:11)
              20:08:22.704 warn javascript.0 (1600) at script.js.Ueberwachen.Zigbeestatus:42:1

              Diese hatte ich zuletzt nicht. Hast du da auch noch eine Idee?

              LG und vielen herzlichen Dank!
              Sebastian

              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @sebastian0010 last edited by

                @sebastian0010
                Dein Skript oben hat keine 42 Zeilen. Somit kann ich mit den Warnungen nichts anfangen. Im Reiter "Log" gibt es weitere Informationen zu den Warnungen.

                1 Reply Last reply Reply Quote 0
                • S
                  sebastian0010 last edited by

                  Sorry richtig, habe vorhin den ausgeklammerten Teil weggenommen.
                  Danke dir für die Infos! Werde versuchen das noch ausfindig zu machen!
                  LG und gute Nacht!
                  Sebastian

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

                  Support us

                  ioBroker
                  Community Adapters
                  Donate

                  696
                  Online

                  31.7k
                  Users

                  79.9k
                  Topics

                  1.3m
                  Posts

                  2
                  7
                  357
                  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