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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    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 @dslraser last edited by

      @dslraser wichtig ist, dass das handy beim script start im wifi registriert ist - sonst dauert es etwas bis es "wirkt"

      bekommst du diesen datenpunkt ? und steht das handy da drin ?Image 1.png

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

        @dslraser @crunchip

        probiert mal dieses - habe dummerweise einen zeile vergessen - sorry

        wenn ihr keine zeit mehr habt, dann testen wir wann anders

        bug-unifi-controller.txt

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

          @liv-in-sky hab jetzt das von oben probiert, da kommt gar nix mehr an5e488bd3-1536-4b06-a363-6803e98fedaf-image.png

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

            @crunchip vielleicht ist deine version zu alt

            hier das beispiel für die settings - ganz oben im script- da fehlt bei dir vielleicht was - übernehme deine daten bis nach standadrVouchers = ... und dann musst du kontrollieren was fehlt

            // Definition Login
            const unifi_username = "username";
            const unifi_password = "passwort";
            const unifi_controller = "https://192.168.xxx.xxx:8443";
            
            let siteName ="default";   //Site name 
            
            // DEFINITION der zu anzeigenden Netzwerke am besten bis auf id und smart alle gleich setzen
            const wifis = {
              "WLAN_Dragon1":     { name: "WLAN_Dragon1", id: "5cadcxxxxxxxxxxxe5381", desc: "WLAN_Dragon1", smart: "WLAN_Dragon1" } ,
              "WLAN_DragonGuest": { name: "WLAN_DragonGuest", id: "5d65xxxxxxxxx1edd761", desc: "WLAN_DragonGuest", smart: "WLAN_DragonGuest" }
            }
            // DEFINITION der Aliasnamen für die AP's - hat nichts mit den Aliasnamen im Controller zu tun - wird nur für das script gebraucht 
            const apName = {  "b4:xx:e4:xx:96:xx" : { aname: "AP-LongR"}, //mac adresse der ap's
                             "18:xx:29:xx:40:xx" : { aname: "AP-Light"}
            }
            
            //Vordefinierte Vouchers für  one-click-create - wird hier etwas geändert BITTE DATENPUNKT (Vouchers_StandardList) LÖSCHEN vor Scriptstart!!!!
            //BITTE alle Werte eingeben - für nichtbenutzte wie up-, download und nmb_begrenzung eine 0 eintragen
            // Pflichteinträge sind dauer, anzahl, multiuse und notiz !!!
            const standardVouchers = {"Vier Tage" : {dauer: 240, anzahl: 1, multiuse: 1, upload: 0, download:0, mb_begrenzung: 500, notiz:"MB Begrenzung 500 - 4 Tage"}, 
                                     "Sieben Tage" : {dauer: 10080, anzahl: 1, multiuse: 1, upload: 300, download:300, mb_begrenzung: 500, notiz:"MB Begrenzung 500 - 7 Tage"},
                                     "99 Minuten" : {dauer: 99, anzahl: 2, multiuse: 1, upload: 0, download:200, mb_begrenzung: 500, notiz:"Dauer 99 Minuten - Anzahl 2"}}
            
            const blackList = ["GalaxyTabS2" ] //Blacklist - diese clients werden nicht berücksichtigt - aber nur wenn ein alias im controller definiert ist
            const checkConnType=["Galaxy-S9","FireTablet7"];  // Datenpunkte (werden erstellt) für Überwachung von Connection (WLAN only) - aber nur wenn ein alias im controller definiert ist
                                                              // wenn leer - keine überwachung (const checkConnType=[])
            
            //Pause bei Umschalten der WLANnetze, damit Netzanmeldungen der clients wieder normal
            const clientPauseConst = 200000;    //1000 bedeutet 1 Sekunde -  das braucht Zeit !!!
            
            // Abfragezyklus definieren
            const abfragezyklus =20000; // es ist nicht zu empfehlen unter 20000 (20 sekunden) zu gehen
            const abfageoffset = 15000; // zu schnelle Abmeldungen können hier eingestellt weren - > erhöhen (15000 = 15 sek.)
            
            //HIER Einstellungen : EIN-AUSSCHALTEN Vouchers, iqontrol-Datei erstellen, anwesenheitskontrolle-clientpflege
            let iqontrol = true;
            let anwesenheit = true; // beim setzen von true auf false die verzeichnisstruktur unter iobroker-objects "von hand" löschen
            
            let vouchers = true;
            let apInfo = true;
            let problemWLAN=false; //bei problemen mit APs die über WLAN angebuden sind
            let countFalseSetting=2; //2 bedeutet : einmal einen abfragezyklus auslassen bevor auf false gesetzt wird: Formel:  n-1
            let aliasname=false; 
            let disConClientsFirst=true; //zeigt disconnected clients als erstes im table (vis) oder iqontrol an
            
            let ohneClientAbfrage=false; //schaltet das bearbeiten der clients vollständig ab - auch keine datenpunkte
            
            let sortedByIP =false; //client anzeige nach IP sortiert
            
            
            //FARBEN für IQontrol und VIS
            //die farbe für die tabellen in der vis wird im widget eingestellt
            //color_vis_text_client_in_table
            //color_vis_text_voucher_in_table
            let color_iqontrol_text__client_letzteAenderung_VIS="lightblue";
            let color_iqontrol_text__client_letzteAenderung_VIS_Text="#d0cdcd";
            let color_iqontrol_text_client_in_table= "black";  
            let color_iqontrol_text__client_disconnected="#01A9DB";
            
            let color_iqontrol_client_gradient1= "lightblue";   
            
            let color_iqontrol_text_voucher_in_table= "black"; 
            let color_iqontrol_voucher_gradient1= "lightblue"; 
            let color_iqontrol_text__client_letzteAenderung="#848484";
            let color_iqontrol_text__voucher_ueberschrift="lightblue";
            
            let schriftart="Helvetica";  //möglich: Helvetica,Serif
            

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

              @liv-in-sky ne da passt alles
              aber das skript will nicht, Zykluszähler läuft auch weiter als 3
              0f4598cf-062e-4ac3-b205-e0919376e3ad-image.png

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

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

                @dslraser wichtig ist, dass das handy beim script start im wifi registriert ist - sonst dauert es etwas bis es "wirkt"

                bekommst du diesen datenpunkt ? und steht das handy da drin ?Image 1.png

                Ja, den DP habe ich und auch das LOG zeigt diese laufend an. Dort sind alle meine WLAN Geräte drinn. Das restliche Verhalten ist unverändert.
                Zusätzlich wird im Log der DP Wifi_Client_Network angemeckert (string/state)

                2019-12-09 11:32:11.652 - warn: javascript.0 (413) You are assigning a undefined to the state "javascript.0.WLANUnifi.Wifi_Client_Network.Heiko-Note10" which expects a string. Please fix your code to use a string or change the state type to undefined. This warning might become an error in future versions.
                
                liv-in-sky 2 Replies Last reply Reply Quote 0
                • liv-in-sky
                  liv-in-sky @dslraser last edited by

                  @dslraser @crunchip

                  ok - eines habe ich definitiv gelernt - erstelle keine scripte, die du nicht testen kannst 😞

                  ich würde vorschlagen, für den moment zu stoppen - ich brauche definitiv eine umgebung, in der ich das testen kann

                  ich schau mir mal da mit dem DP Wifi_Client_Network an

                  @dslraser melde dich bitte, wenn du mich mal wieder für eine stunde oder so bei dir einwählen lassen kannst
                  @crunchip verstehe im moment nicht, warum die scripte so unterschiedlich reagieren - wir machen auch mal eine session, wenn es bei dir paßt

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

                    @liv-in-sky alle neueren varianten die ich probiert habe, funktionieren bei mir gar nicht mehr.
                    bei mir funktioniert dieses
                    22102019-2.1.txt

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

                      @liv-in-sky

                      wenn du jemanden für ne Team Viewer benötigst melde dich mal bin zwar zur zeit Beruflich ziemlich eingespannt, aber vill passt es ja mal ..

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

                        @dslraser hätte noch mal ein script für dich - das mit dem false/true des clients habe ich nicht angerührt - müßte also noch funktionieren - es geht eigentlich nur um das "noConn" wenn der client sich abmeldet aber als usg mitglied erscheint

                        bug-unifi-controller.txt

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

                          @Frank579 hab im chat geantwortet !

                          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 hätte noch mal ein script für dich - das mit dem false/true des clients habe ich nicht angerührt - müßte also noch funktionieren - es geht eigentlich nur um das "noConn" wenn der client sich abmeldet aber als usg mitglied erscheint

                            bug-unifi-controller.txt

                            Bin in einer halben Stunde (ca) zu Hause...

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

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

                              @dslraser hätte noch mal ein script für dich - das mit dem false/true des clients habe ich nicht angerührt - müßte also noch funktionieren - es geht eigentlich nur um das "noConn" wenn der client sich abmeldet aber als usg mitglied erscheint

                              bug-unifi-controller.txt

                              Das true und false im DP funktioniert. Aber die noConn Geschichte kommt deutlich später, jedenfalls sollte noConn zeitgleich mit dem false kommen. Also der Ablauf passt noch nicht so ganz, jedenfalls noch nicht so wie heute Vormittag "angedacht".

                              Edit: da habe ich noch einen mixed draus gemacht, sonst kommen Fehler im LOG (und ich weiß nicht ob dann nicht geschrieben wurde. Mit mixed kommt kein Fehler)

                              {
                                "common": {
                                  "name": "Heiko-Note10_Netwok",
                                  "type": "mixed",
                                  "role": "state",
                                  "read": true,
                                  "write": true
                                },
                              

                              Edit: ich habe jetzt mal zwei Handys in die Überwachung eingefügt. Jetzt kapiere ich gar nix mehr....nun kommt noConn schneller als false....und der AP Name kommt schneller als das true, also genau umgekehrt wie mit nur einem Gerät.

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

                                @dslraser habe nochmal testen können - mit der version hat es tatsächlich funktioniert

                                unifi-skipt-besser.txt

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

                                  @dslraser hätte nochmal was zum testen

                                  habe mal versucht einen extra case zu machen

                                  unifi-skipt-mit-sondecase.txt

                                  dslraser 2 Replies 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 hätte nochmal was zum testen

                                    habe mal versucht einen extra case zu machen

                                    unifi-skipt-mit-sondecase.txt

                                    läuft nicht...

                                    javascript.0	2019-12-10 15:02:09.567	error	(413) at Timer.processTimers (timers.js:223:10)
                                    javascript.0	2019-12-10 15:02:09.567	error	(413) at listOnTimeout (timers.js:263:5)
                                    javascript.0	2019-12-10 15:02:09.567	error	(413) at tryOnTimeout (timers.js:300:5)
                                    javascript.0	2019-12-10 15:02:09.567	error	(413) at ontimeout (timers.js:438:13)
                                    javascript.0	2019-12-10 15:02:09.567	error	(413) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2016:34)
                                    javascript.0	2019-12-10 15:02:09.566	error	(413) at Object.<anonymous> (script.js.09_Unifi.Unifi-Test-4-Sondercase:660:98)
                                    javascript.0	2019-12-10 15:02:09.565	error	(413) Error in callback: TypeError: Cannot read property 'name' of undefined
                                    
                                    10.12.2019, 15:03:05.863	[info ]: javascript.0 (413) Stop script script.js.09_Unifi.Unifi-Test-4-Sondercase
                                    10.12.2019, 15:03:06.555	[warn ]: javascript.0 (413)     at workAP (script.js.09_Unifi.Unifi-Test-4-Sondercase:1466:44)
                                    10.12.2019, 15:03:06.556	[warn ]: javascript.0 (413)     at Object.setInterval (script.js.09_Unifi.Unifi-Test-4-Sondercase:1900:38)
                                    10.12.2019, 15:03:06.556	[warn ]: javascript.0 (413)     at workAP (script.js.09_Unifi.Unifi-Test-4-Sondercase:1467:50)
                                    10.12.2019, 15:03:06.557	[warn ]: javascript.0 (413)     at Object.setInterval (script.js.09_Unifi.Unifi-Test-4-Sondercase:1900:38)
                                    10.12.2019, 15:03:06.558	[warn ]: javascript.0 (413)     at workAP (script.js.09_Unifi.Unifi-Test-4-Sondercase:1482:44)
                                    10.12.2019, 15:03:06.558	[warn ]: javascript.0 (413)     at Object.setInterval (script.js.09_Unifi.Unifi-Test-4-Sondercase:1900:38)
                                    10.12.2019, 15:03:06.558	[warn ]: javascript.0 (413)     at workAP (script.js.09_Unifi.Unifi-Test-4-Sondercase:1483:50)
                                    10.12.2019, 15:03:06.559	[warn ]: javascript.0 (413)     at Object.setInterval (script.js.09_Unifi.Unifi-Test-4-Sondercase:1900:38)
                                    10.12.2019, 15:03:09.485	[error]: javascript.0 (413)     at Object.<anonymous> (script.js.09_Unifi.Unifi-Test-4-Sondercase:660:98)
                                    
                                    1 Reply Last reply Reply Quote 0
                                    • dslraser
                                      dslraser Forum Testing Most Active @liv-in-sky last edited by

                                      @liv-in-sky

                                      1900:38

                                                                           workAP(apName[ap_name].aname); } 
                                      
                                      

                                      660:98

                                                 if(!versuch[z].hasOwnProperty("_last_seen_by_uap") && wlanClientDB.includes(versuch[i][myname])) caseHelper=5;
                                      
                                      
                                      liv-in-sky 2 Replies Last reply Reply Quote 0
                                      • liv-in-sky
                                        liv-in-sky @dslraser last edited by

                                        @dslraser bitte in zeile 660 - bitte das i in z ändern beim zweiten versuch[i]

                                        die andere zeile könnte dann verschwinden - an dieser stelle habe ich nichts verändert - unter zeile 1500 war ich schon lange nicht mehr - weiß garnicht, wie es da unten aussieht 🙂

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

                                          @dslraser habe übrigens gute erfahrung mit anydesk gemacht - ein gemeinsamer test wäre cool - wenn es zeitlich wieder mal paßt

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

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

                                            @dslraser bitte in zeile 660 - bitte das i in z ändern beim zweiten versuch[i]

                                            die andere zeile könnte dann verschwinden - an dieser stelle habe ich nichts verändert - unter zeile 1500 war ich schon lange nicht mehr - weiß garnicht, wie es da unten aussieht 🙂

                                            läuft "fast" !
                                            Einmal von drei Versuchen blieb der DP false, obwohl am WLAN angemeldet und der AP Name in Wifi_Client_Network von noConn auf den AP Namen gewechselt hat. Danach nochmal WLAN an/aus, dann funktionierte es.

                                            liv-in-sky 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            716
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

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