Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Unifi WLAN Script 2 mit Anwesenheitskontrolle

    NEWS

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    Unifi WLAN Script 2 mit Anwesenheitskontrolle

    This topic has been deleted. Only users with topic management privileges can see it.
    • liv-in-sky
      liv-in-sky last edited by

      @dslraser

      script zum test

      <xml xmlns="http://www.w3.org/1999/xhtml">
       <variables>
         <variable type="" id="^HoH-k20pa^?@DB/xeM3">i</variable>
       </variables>
       <block type="on_ext" id="ce.n5V*r/z;dp^fkkvC2" x="-1137" y="-613">
         <mutation items="1"></mutation>
         <field name="CONDITION">ne</field>
         <field name="ACK_CONDITION"></field>
         <value name="OID0">
           <shadow type="field_oid" id="!h,u;ltVdz78tG8oL7,U">
             <field name="oid">default</field>
           </shadow>
           <block type="selector" id="SxVqA[czH|8s5L)q9/(]">
             <field name="TEXT">state[id='javascript.2.WLANUnifi.Wifi_Client_States.*']</field>
           </block>
         </value>
         <statement name="STATEMENT">
           <block type="comment" id="Dwx%2Z_Q){[J?[h??tEg">
             <field name="COMMENT">für umschalten von true auf false</field>
             <next>
               <block type="controls_forEach" id="([/#z6r;#I$$D_y,H9*D">
                 <field name="VAR" id="^HoH-k20pa^?@DB/xeM3" variabletype="">i</field>
                 <value name="LIST">
                   <block type="selector" id="sR}f`bRg,(Zhx|uVrXyW">
                     <field name="TEXT">state[id='javascript.2.WLANUnifi.Wifi_Client_States.*']</field>
                   </block>
                 </value>
                 <statement name="DO">
                   <block type="controls_if" id="V!OF]VApI$$z_#{njxZm">
                     <value name="IF0">
                       <block type="logic_operation" id="a{n+kypj2v4y+x-t6~v?" inline="false">
                         <field name="OP">AND</field>
                         <value name="A">
                           <block type="logic_compare" id="h5r*Odo:0-**p_o72gIA">
                             <field name="OP">EQ</field>
                             <value name="A">
                               <block type="get_value_var" id="MchNhUyS%^ne]yXjdUk9">
                                 <field name="ATTR">val</field>
                                 <value name="OID">
                                   <shadow type="text" id="$ZuV9.Z`zK=rA!Q/EU}U">
                                     <field name="TEXT"></field>
                                   </shadow>
                                   <block type="variables_get" id="XZu1I6f=IL2xH3Q[ezAq">
                                     <field name="VAR" id="^HoH-k20pa^?@DB/xeM3" variabletype="">i</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <value name="B">
                               <block type="logic_boolean" id="9rpzV0;=TJj?oyRi?V$W">
                                 <field name="BOOL">FALSE</field>
                               </block>
                             </value>
                           </block>
                         </value>
                         <value name="B">
                           <block type="logic_compare" id="e1(UaFO;@)-%m_zY(:C]">
                             <field name="OP">LT</field>
                             <value name="A">
                               <block type="math_arithmetic" id="yet)l!*(=|$9p-k^C@bD">
                                 <field name="OP">MINUS</field>
                                 <value name="A">
                                   <shadow type="math_number" id="L[+]Ru)025H_(1E)q([!">
                                     <field name="NUM">1</field>
                                   </shadow>
                                   <block type="time_get" id="cHIcHsV^}y^SN{fQlj*C">
                                     <mutation format="false" language="false"></mutation>
                                     <field name="OPTION">object</field>
                                   </block>
                                 </value>
                                 <value name="B">
                                   <shadow type="math_number" id="[q:ASesDitQ[Bw%yB-#:">
                                     <field name="NUM">1</field>
                                   </shadow>
                                   <block type="get_value_var" id="3p6n[,y+-W,Dbrs-b{t0">
                                     <field name="ATTR">lc</field>
                                     <value name="OID">
                                       <shadow type="text" id="$ZuV9.Z`zK=rA!Q/EU}U">
                                         <field name="TEXT"></field>
                                       </shadow>
                                       <block type="variables_get" id="Y7`;FE#=J:SO$L;BHtC/">
                                         <field name="VAR" id="^HoH-k20pa^?@DB/xeM3" variabletype="">i</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <value name="B">
                               <block type="math_number" id="3gxc(PJ5aM``I2C9Eh=D">
                                 <field name="NUM">3000</field>
                               </block>
                             </value>
                           </block>
                         </value>
                       </block>
                     </value>
                     <statement name="DO0">
                       <block type="debug" id="B$A}u)1wjXW%P!kzKkL`">
                         <field name="Severity">warn</field>
                         <value name="TEXT">
                           <shadow type="text" id="V4J^|!u%Y_g:#8p!Q5)*">
                             <field name="TEXT">test</field>
                           </shadow>
                           <block type="text_join" id="nRs9ge34N=4lR|!=xs_(">
                             <mutation items="4"></mutation>
                             <value name="ADD0">
                               <block type="text" id="`tD-nC,vQcJk@thaHH4p">
                                 <field name="TEXT">Wert von  :  </field>
                               </block>
                             </value>
                             <value name="ADD1">
                               <block type="variables_get" id="^?]8I,v|W46Vdqm1e9.H">
                                 <field name="VAR" id="^HoH-k20pa^?@DB/xeM3" variabletype="">i</field>
                               </block>
                             </value>
                             <value name="ADD2">
                               <block type="text" id="X.oX530/]eJ/%OX4p}2J">
                                 <field name="TEXT"> ist :----------------------------------</field>
                               </block>
                             </value>
                             <value name="ADD3">
                               <block type="get_value_var" id="*l%y+oTXoU,.0!ydd)CD">
                                 <field name="ATTR">val</field>
                                 <value name="OID">
                                   <shadow type="text" id="$ZuV9.Z`zK=rA!Q/EU}U">
                                     <field name="TEXT"></field>
                                   </shadow>
                                   <block type="variables_get" id="]%RvRcW(Fkpk}S?^/rA8">
                                     <field name="VAR" id="^HoH-k20pa^?@DB/xeM3" variabletype="">i</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                           </block>
                         </value>
                       </block>
                     </statement>
                   </block>
                 </statement>
               </block>
             </next>
           </block>
         </statement>
       </block>
      </xml>
      

      1 Reply Last reply Reply Quote 0
      • dslraser
        dslraser Forum Testing Most Active @Nashra last edited by dslraser

        @Nashra sagte in Unifi WLAN Script 2 mit Anwesenheitskontrolle:

        Ok 👍
        Was ich bis jetzt gefunden habe wegen fehlendem Hostnamen ist, das Unifi dies über die MAC-Adresse regelt.
        Desweiteren wäre es toll wenn auch das mit den Aliasnamen funktionieren würde, wieso da eigentlich eine Filterung?

        Hattest Du das Script gestart ohne Alias auf true zu setzten und dann mit true ?
        (wenn Du diese Config änderst mußt Du einmal alle Objekte löschen und dann wieder das Script starten, hattest Du gelöscht ?)

        Nashra 1 Reply Last reply Reply Quote 0
        • Nashra
          Nashra Most Active Forum Testing @dslraser last edited by

          @dslraser sagte in Unifi WLAN Script 2 mit Anwesenheitskontrolle:

          @Nashra sagte in Unifi WLAN Script 2 mit Anwesenheitskontrolle:

          Ok 👍
          Was ich bis jetzt gefunden habe wegen fehlendem Hostnamen ist, das Unifi dies über die MAC-Adresse regelt.
          Desweiteren wäre es toll wenn auch das mit den Aliasnamen funktionieren würde, wieso da eigentlich eine Filterung?

          Hattest Du das Script gestart ohne Alias auf true zu setzten und dann mit true ?
          (wenn Du diese Config änderst mußt Du einmal alle Objekte löschen und dann wieder das Script starten, hattest Du gelöscht ?)

          Erster Start war mit Alias=true, dann alles gelöscht und mit alias=false wieder neu.

          dslraser 1 Reply Last reply Reply Quote 0
          • dslraser
            dslraser Forum Testing Most Active @Nashra last edited by dslraser

            @Nashra
            okay.
            das mit den Aliasnamen hatten wir deswegen, weil bei manchen Geräten im Contoller kein Hostname angezeigt wird, das ergibt dann ein undefined und dann wurde im Script kein DP dafür angelegt bzw. ein undefined.
            Aliasnamen kann man im Controller aber selbst setzten, dann wurden solche Geräte bei mir angezeigt und in den Objekten hat man dann auch den Namen den man selbst als Alias vergeben vergeben hat.

            PS: das mit den Alias Namen finde ich schon gut, da man sonst die ganzen Amazon Geräte kaum unterscheiden kann.

            Nashra 1 Reply Last reply Reply Quote 0
            • Nashra
              Nashra Most Active Forum Testing @dslraser last edited by

              @dslraser sagte in Unifi WLAN Script 2 mit Anwesenheitskontrolle:

              Aliasnamen kann man im Controller aber selbst setzten, dann wurden solche Geräte bei mir angezeigt und in den Objekten hat man dann auch den Namen den man selbst als Alias vergeben vergeben hat.

              Aliase haben die bei mir alle im Controller

              PS: das mit den Alias Namen finde ich schon gut, da man sonst die ganzen Amazon Geräte kaum unterscheiden kann.

              Genau deswegen würde ich es gerne nutzen im Script aber dann zeigt er mir leider nicht alle Geräte an

              1 Reply Last reply Reply Quote 0
              • dslraser
                dslraser Forum Testing Most Active @Nashra last edited by

                @Nashra sagte in Unifi WLAN Script 2 mit Anwesenheitskontrolle:

                aber dafür wird mir aus dem zweiten WLan-Netz

                Ja, bei mir werden die Alias Geräte alle angezeigt. Ich habe aber auch jetzt erst gelesen das Du mehrere WLAN hast. Hast Du alle WLAN mit der dazugehörigen ID im Script eingetragen ?

                Hier an dieser Stelle

                // DEFINITION der zu anzeigenden Netzwerke am besten bis auf id und smart alle gleich setzen
                const wifis = {
                   "HKHOME":     { name: "HKHOME", id: "xxxwlanidxxx", desc: "HKHOME", smart: "" } ,
                   "GASTWLAN": { name: "GASTWLAN", id: "xxxwlanidxxx", desc: "GASTWLAN", smart: "Gastwifi,Gästewifi" }
                }
                
                Nashra liv-in-sky 2 Replies Last reply Reply Quote 0
                • Nashra
                  Nashra Most Active Forum Testing @dslraser last edited by

                  @dslraser sagte in Unifi WLAN Script 2 mit Anwesenheitskontrolle:

                  @Nashra sagte in Unifi WLAN Script 2 mit Anwesenheitskontrolle:

                  aber dafür wird mir aus dem zweiten WLan-Netz

                  Ja, bei mir werden die Alias Geräte alle angezeigt. Ich habe aber auch jetzt erst gelesen das Du mehrere WLAN hast. Hast Du alle WLAN mit der dazugehörigen ID im Script eingetragen ?

                  Ja sind alle entsprechend eingetragen. Ohne Alias wird im Hauptnetz alles angezeigt, mit Alias nicht da Filterung.
                  Die Cams im 2ten Netz nur nicht weil sie eben keinen Hostnamen haben, außer ich setze Alias.

                  1 Reply Last reply Reply Quote 0
                  • liv-in-sky
                    liv-in-sky @dslraser last edited by

                    @dslraser @Nashra

                    • habe hier mal eine erste test version für user mit unifi switch - es gehört nur der teil ab "-AB HIER NICHTS MEHR ÄNDERN" ersetzt

                    test-fuer-switch-30-9.txt

                    • der(die) switch('s) muss unter apname eingetragen sein z.b.
                    const apName = {  "b4:xx:xx:xx:xx:63" : { aname: "AP-LongR"},
                                      "18:xx:xx:xx:xx:e2" : { aname: "AP-Light"},
                                      "18:e8:xx:xx:6f:xx" : {aname: "Switch1"}}
                    
                    • nur datenpunkte der clients löschen bevor scriptstart

                    bin nicht sicher - aber es sollten die lan geräte angezeigt werden - also bitte testen und feedback

                    Nashra dslraser 2 Replies Last reply Reply Quote 0
                    • Nashra
                      Nashra Most Active Forum Testing @liv-in-sky last edited by

                      @liv-in-sky sagte in Unifi WLAN Script 2 mit Anwesenheitskontrolle:

                      @dslraser @Nashra

                      • habe hier mal eine erste test version für user mit unifi switch - es gehört nur der teil ab "-AB HIER NICHTS MEHR ÄNDERN" ersetzt

                      test-fuer-switch-30-9.txt

                      • der(die) switch('s) muss unter apname eingetragen sein z.b.
                      const apName = {  "b4:xx:xx:xx:xx:63" : { aname: "AP-LongR"},
                                        "18:xx:xx:xx:xx:e2" : { aname: "AP-Light"},
                                        "18:e8:xx:xx:6f:xx" : {aname: "Switch1"}}
                      
                      • nur datenpunkte der clients löschen bevor scriptstart

                      bin nicht sicher - aber es sollten die lan geräte angezeigt werden - also bitte testen und feedback

                      LAN-Geräte werden, wenn Hostname vorhanden, als DP angelegt.
                      Zurzeit sind 32 Geräte im Netz aber nur 23 werden angezeigt.
                      liste.PNG

                      liv-in-sky 2 Replies Last reply Reply Quote 0
                      • liv-in-sky
                        liv-in-sky @Nashra last edited by

                        @Nashra erstmal danke fürs testen

                        • werden die datenpunkte auf true gesetzt und wenn du ein lan gerät abschaltest, wird es auf false gesetzt ?
                        • kannst du irgendwie herausfinden, welche gemeinsamkeit die fehlenden geräte haben - sind die alle an einem switch oder ap oder an einem nicht-unifi-switch ? oder liegt es am aliasnamen ?
                        Nashra 1 Reply Last reply Reply Quote 0
                        • liv-in-sky
                          liv-in-sky @Nashra last edited by liv-in-sky

                          @Nashra würdest du mir mal deine daten zur verfügung stellen ? - dann könnt ich die mir mal ansehen

                          falls ja, dannImage 9.png das d bei dlog entfernen und die daten aus den log unter dem script kopieren und in eine datei sichern

                          ich würde dir dann eine mailadresse im chat geben, damit deine daten nicht im netz liegen

                          1 Reply Last reply Reply Quote 0
                          • dslraser
                            dslraser Forum Testing Most Active @liv-in-sky last edited by

                            @liv-in-sky sagte in Unifi WLAN Script 2 mit Anwesenheitskontrolle:

                            bin nicht sicher - aber es sollten die lan geräte angezeigt werden - also bitte testen und feedback

                            Feedback von mir:

                            bei mir werden alle LAN und WLAN Geräte im Alias Modus angezeigt. Auch true und false der LAN Geräte funktioniert. Ich habe ein LAN Gerät testweise entfernt und es ging auf false, danach wieder das LAN Kabel rein und es geht auf true. Sehr schön.
                            Auch die gestern telefonisch besprochene Gesamt Geräte Anzahl (inkl. LAN) bleibt jetzt stabil stehen.

                            Noch einen Fehler, den ich schon länger gesehen habe, hier ist ein Umlautefehler drinn.

                            Bildschirmfoto 2019-09-30 um 19.46.13.png

                            Ich lasse das Sript jetzt mal etwas laufen.

                            liv-in-sky 2 Replies Last reply Reply Quote 0
                            • liv-in-sky
                              liv-in-sky @dslraser last edited by

                              @dslraser das sind schon mal gute nachrichten

                              das mit dem umlauten check ich nicht - ich kopiere das script in meinen editor - wenn ich das script dann im forum direkt aufmache und ansehe ist es richtig - könnte es sein, dass es dein editor ist - wenn du das file downloadest öffnest du es dann in einem editor ? suche doch mal im editor nach wähle

                              das bild zeigt das file direkt im browser über das forum geöffnet - da stimmt es noch
                              Image 11.png

                              dslraser 2 Replies Last reply Reply Quote 0
                              • dslraser
                                dslraser Forum Testing Most Active @liv-in-sky last edited by

                                @liv-in-sky
                                ja liegt wohl an meinem Editor, im Browser stimmt es.

                                liv-in-sky 1 Reply Last reply Reply Quote 0
                                • liv-in-sky
                                  liv-in-sky @dslraser last edited by

                                  @dslraser stimmt eigentlich die anzahl mit der anzahl im unifi controller - es sollten falls geräte gefiltert werden, diese auch abgezogen sein

                                  die tatsächliche anzahl ist im datenpunkt unter health zu sehen

                                  bei mir wird einer ausgefiltert
                                  Image 12.png

                                  dslraser 1 Reply Last reply Reply Quote 0
                                  • liv-in-sky
                                    liv-in-sky @dslraser last edited by

                                    @dslraser sagte in Unifi WLAN Script 2 mit Anwesenheitskontrolle:

                                    @liv-in-sky
                                    ja liegt wohl an meinem Editor, im Browser stimmt es.

                                    hattest du nicht einen apple ? das könnte es sein

                                    1 Reply Last reply Reply Quote 0
                                    • dslraser
                                      dslraser Forum Testing Most Active @liv-in-sky last edited by

                                      @liv-in-sky

                                      hier kommt jetzt doch ein Fehler im LOG

                                      javascript.0	2019-09-30 20:00:38.478	error	at Object.<anonymous> (script.js.Heiko.16Unifi.Unifi-WLAN2:492:29)
                                      javascript.0	2019-09-30 20:00:38.478	error	Error in callback: TypeError: Cannot read property 'toString' of undefined
                                      
                                      liv-in-sky 1 Reply Last reply Reply Quote 0
                                      • liv-in-sky
                                        liv-in-sky @dslraser last edited by liv-in-sky

                                        @dslraser die zeilen nummer stimmen nicht - kannst du mir die code zeile bitte kopieren 492

                                        dslraser 1 Reply Last reply Reply Quote 0
                                        • dslraser
                                          dslraser Forum Testing Most Active @liv-in-sky last edited by

                                          @liv-in-sky sagte in Unifi WLAN Script 2 mit Anwesenheitskontrolle:

                                          @dslraser die zeilen nummer stimmen nicht - kannst du mir die code zeile bitte kopieren 492

                                          mylog(tester.toString());
                                          
                                          liv-in-sky 2 Replies Last reply Reply Quote 0
                                          • liv-in-sky
                                            liv-in-sky @dslraser last edited by

                                            @dslraser merci - einfach auskommentieren - ich ändere das auch - kommt zweimal vor - entweder etwas weiter drüber oder drunter

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            894
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript monitoring
                                            46
                                            1358
                                            332223
                                            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