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

    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

    Unifi WLAN Script

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

      @liv-in-sky sagte in Unifi WLAN Script:

      @dslraser ja ein apple problem - auf diesem weg scheint die anwesenheitskontrolle nicht zu funktionieren mit iphone - kannst du höchstens mit einem zusätzliche script abfangen

      wie es scheint, meldet es sich immer nur für ein paar minuten ab - das könntest du prüfen

      Das ist ein Apple-Problem per se. Die Anwesenheitserkennung über UniFi ist die einzige Variante, die bei einem iPhone wirklich sehr gut funktioniert - zumindest grundsätzlich. Das Verhalten mit dem An- und Abmelden hatte ich auch schonmal. Ein Neustart des Telefons hat geholfen.

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

        @Hiltex sagte in Unifi WLAN Script:

        Ein Neustart des Telefons hat geholfen.

        Jetzt mit dem letzten Script und nach dem Handyneustart läuft es Amok...
        Die google Suche hat auch so einiges zum Thema Apple ausgespuckt. Das scheint ja ein bekanntes Problem zu sein.
        Ist nicht so tragisch, ich nutze zur Anwesenheit etwas anderes...

        Screenshot_20190904-171632_Telegram.jpg

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

          @dslraser mit dem neuen script wird natürlich öfter geprüft - wenn da das last-seen-by-uap durch das handy verückt spielt - kommen natürlich maßig nachrichten

          mit android oder anderen geräten funktioniert es aber hoffentlich ???

          das kann man auch nicht mehr mit einem externen script abfangen

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

            @thewhobox

            habe das error problem so gelöst - ist das in ordnung ?? -sorry für meine unwissenheit
            habe dazu die login() funktion geändert und den gruppenaufruf

            setInterval(async () => {
                
                if (await login()) {
                  for(let wifi_name in wifis) {
                     await getStatus(wifis[wifi_name]);}
                        
                  if (vouchers)  getVouchers();
                  await getClients();
            
                } else { log("Verbindung zum Unifi Controller nicht möglich - Unifi Script settings prüfen oder controller check !!!","error");}
            
                }, abfragezyklus); // wird oben definiert
             
            

            rote pfeile sind änderung:
            Image 2.png

            log, wenn controller service down:
            Image 3.png

            thewhobox 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:

              mit android oder anderen geräten funktioniert es aber hoffentlich ???

              mit meinem Androiden ist alles okay.

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

                @liv-in-sky ja ist auch eine möglichkeit.
                Evtl müsste man beim cookie speichern noch was ändern, damit da nicht alle x Sekunden die cookies drin gespeichert werden.
                Schaue später daheim mal kurz nach

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

                  @thewhobox sagte in Unifi WLAN Script:

                  @liv-in-sky ja ist auch eine möglichkeit.
                  Evtl müsste man beim cookie speichern noch was ändern, damit da nicht alle x Sekunden die cookies drin gespeichert werden.
                  Schaue später daheim mal kurz nach

                  ich hatte auch versucht getStatus eine fehlermeldung abzuringen - z.b wenn die id falsch definiert ist - das hat garnicht geklappt - problem - die daten (resp) wird auf meta ok geprüft (was auch kommt, da verbindung ja funktioniert) aber nicht, ob bei resp.data etwas drinsteht ( got response "{"meta":{"rc":"ok"},"data":[]}")

                  ich wollte eigendlich beim aufruf der gruppenabfrage eine art kette bilden und abfragen, ob alles ok ist (wenn ja - ab zur nächsten abfrage (get clients) wieder alles ok - ab zu vouchers - bei dem beispiel ( got response "{"meta":{"rc":"ok"},"data":[]}") ist nichts ok, das programm fängt immer von vorne an - da ich das falsche netzwerk als zweites definiert hatte, wird nur das erste auf status gecheckt - das dritte wird ausgelassen

                  wäre toll, wenn du noch ein paar minuten heue abend hättest

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

                    @liv-in-sky
                    so, noch mal Feedback !
                    Ich habe mein Telegram Script jetzt mal aus und habe nur die Objekte beobachtet.
                    Mein Handy (Anroid) wird übrigens auch im 20 Sekunden Takt (wahrscheinlich im Aktualisierungsintervall, manchmal wird auch eins übersprungen) von true auf false gewechselt, obwohl ich am Handy das WLAN nicht an und aus schalte, und immer so weiter...Das iPhone meiner Frau habe ich jetzt mal aussen vor gelassen.
                    Also als Test mit dieser Vorgehensweise:
                    Ich starte das Script, Handy wird in den DP's aufgeleistet, dann deaktiviere ich einmal das WLAN am Handy und warte bis es auf false geht. Dann schalte ich das WLAN am Handy wieder an, dann beginnt die true und false schalterei.

                    im Script selbst ist eins von diesen hier zu viel. Jedenfalls schmeisst das Script beim ersten Start diesen Fehler, hatte ich vorhin vergessen zu schreiben.

                    let wifiDPs = [];
                    

                    ich habe meine zwei "zu überwachenden" Geräte so eingefügt, ist das so von Dir gedacht ?

                    //Überwachte Geräte beim Abschalten - Beispiele überschreiben!
                    const fastLane = {
                       "Galaxy-Note8": { name: "Galaxy-Note8"} ,
                       "Mollys-iPhone": { name: "Mollys-iPhone"},
                    }
                    

                    Irgendwas passt Da jedenfalls noch nicht...
                    Hast Du das mal mit Deinem Handy probiert und die Objekte beobachtet ?

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

                      @liv-in-sky

                      noch eine Info/Frage ?
                      im Log taucht jetzt alle 20 Sekunden als bzw. unter info: eine meiner amazon Geräte auf, warum bzw. wofür ist das ?

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

                        @dslraser - ich mache nichts anderes als zu beobachten in den letzten tagen - ich hba edauernd eine benachrichtigung durch alexa, wenn etwas schaltet - beim start habe ich auch schon mal das umschalten gesehen - aber nur einmal anschliessend ist der status richtig - das liegt daran, das ein disconnect erstmal durch ein nicht in der liste von unifi geschaltet wird - das kan n ich nicht umgehen, da ich immer eine aktuelle liste von unifi brauche - anschliessend werden die einzelfälle nochmal bearbeitet. ich schau mal - aber wie gesagt- nur beim neustart des scripts - nach spätestens einen zyklus ist das vorbei

                        ich habe sehr kurze checkzeiten für das last seen-by-uap - eventuell ist da ein problem
                        doch bevor du das versuchst, lösche mal das komma nach mollys-iphone siehe:

                        const fastLane = {
                            "Galaxy-S9": { name: "Galaxy-S9"} ,
                            "GalaxyTabS2": { name: "GalaxyTabS2"},
                            "ESP_C75826" : {name: "ESP_C75826"}
                        }
                        

                        nach dem letzten eintrag gehört kein komma- warscheinlich unwichtig - aber versuche es mal

                        zurück zum uap thema du kannst hier mal etwas testen
                        Image 1.png

                        dadurch werden die registrierzeiten etwas verlängert aber evt. beruhigt es das ganze.
                        zu ändern - bei zweitem pfeilen - in funktion fastlane() - änderung: abfragezyklus zu abfragezyklus+15000 - eigentlich nur wichtig beim unterem pfeil - evtl hilft das

                        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:

                          abfragezyklus+15000

                          also die 1000 auf 15000 ? (oder meinst Du 1500 ?)

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

                            @dslraser

                            ich bekomme beim import des skripts zig "missing semikolon" sowie " expected an identifier but instead saw ')' " in quasi jeder function.

                            Die Semikolons sind kein Problem, das mit den Klammern verstehe ich nicht, da alles zu passen scheint. habs mir nochmal im editor angesehen, da passt m.E. alles

                            mit aktualisertem JS Adapter sieht meine Konsole beim starten des Skripts so aus:

                            	2019-09-04 21:57:42.261	error	at TCP.onread (net.js:547:20)
                            javascript.0	2019-09-04 21:57:42.261	error	at Socket.Readable.push (_stream_readable.js:134:10)
                            javascript.0	2019-09-04 21:57:42.261	error	at readableAddChunk (_stream_readable.js:176:18)
                            javascript.0	2019-09-04 21:57:42.261	error	at Socket.emit (events.js:188:7)
                            javascript.0	2019-09-04 21:57:42.261	error	at emitOne (events.js:96:13)
                            javascript.0	2019-09-04 21:57:42.260	error	at Socket.realHandler (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/WebSocket.js:825:20)
                            javascript.0	2019-09-04 21:57:42.260	error	at Receiver.add (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/Receiver.js:103:24)
                            javascript.0	2019-09-04 21:57:42.260	error	at Receiver.expectHandler (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/Receiver.js:499:31)
                            javascript.0	2019-09-04 21:57:42.260	error	at Receiver.finish (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/Receiver.js:541:12)
                            javascript.0	2019-09-04 21:57:42.260	error	at Receiver.flush (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/Receiver.js:347:3)
                            javascript.0	2019-09-04 21:57:42.260	error	at /opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/Receiver.js:508:14
                            javascript.0	2019-09-04 21:57:42.259	error	at Receiver.applyExtensions (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/Receiver.js:371:5)
                            javascript.0	2019-09-04 21:57:42.259	error	at /opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/Receiver.js:536:18
                            javascript.0	2019-09-04 21:57:42.259	error	at Receiver.ontext (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/WebSocket.js:841:10)
                            javascript.0	2019-09-04 21:57:42.259	error	at WebSocket.emit (events.js:191:7)
                            javascript.0	2019-09-04 21:57:42.259	error	at emitTwo (events.js:106:13)
                            javascript.0	2019-09-04 21:57:42.259	error	at WebSocket.onMessage (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/WebSocket.js:442:14)
                            javascript.0	2019-09-04 21:57:42.258	error	at WebSocket.ws.onmessage (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/transports/websocket.js:146:10)
                            javascript.0	2019-09-04 21:57:42.258	error	at WS.Transport.onData (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/transport.js:137:8)
                            javascript.0	2019-09-04 21:57:42.258	error	at WS.Transport.onPacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/transport.js:145:8)
                            javascript.0	2019-09-04 21:57:42.258	error	at WS.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20)
                            javascript.0	2019-09-04 21:57:42.258	error	at WS.<anonymous> (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/socket.js:268:10)
                            javascript.0	2019-09-04 21:57:42.258	error	at Socket.onPacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/socket.js:451:14)
                            javascript.0	2019-09-04 21:57:42.258	error	at Socket.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20)
                            javascript.0	2019-09-04 21:57:42.257	error	at Socket.<anonymous> (/opt/iobroker/node_modules/component-bind/index.js:21:15)
                            javascript.0	2019-09-04 21:57:42.257	error	at Manager.ondata (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:322:16)
                            javascript.0	2019-09-04 21:57:42.257	error	at Decoder.add (/opt/iobroker/node_modules/socket.io-parser/index.js:246:12)
                            javascript.0	2019-09-04 21:57:42.257	error	at Decoder.Emitter.emit (/opt/iobroker/node_modules/component-emitter/index.js:134:20)
                            javascript.0	2019-09-04 21:57:42.257	error	at Decoder.<anonymous> (/opt/iobroker/node_modules/component-bind/index.js:21:15)
                            javascript.0	2019-09-04 21:57:42.257	error	at Manager.ondecoded (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:332:8)
                            javascript.0	2019-09-04 21:57:42.257	error	at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20)
                            javascript.0	2019-09-04 21:57:42.256	error	at Manager.<anonymous> (/opt/iobroker/node_modules/component-bind/index.js:21:15)
                            javascript.0	2019-09-04 21:57:42.256	error	at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:236:12)
                            javascript.0	2019-09-04 21:57:42.256	error	at Socket.onack (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:312:9)
                            javascript.0	2019-09-04 21:57:42.256	error	at Socket.adapter.getForeignState (/opt/iobroker/node_modules/iobroker.javascript/main.js:745:17)
                            javascript.0	2019-09-04 21:57:42.256	error	at createProblemObject (/opt/iobroker/node_modules/iobroker.javascript/main.js:1123:17)
                            javascript.0	2019-09-04 21:57:42.256	error	at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1070:37)
                            javascript.0	2019-09-04 21:57:42.255	error	at compile (/opt/iobroker/node_modules/iobroker.javascript/main.js:878:28)
                            javascript.0	2019-09-04 21:57:42.255	error	at Object.createScript (vm.js:56:10)
                            javascript.0	2019-09-04 21:57:42.255	error	SyntaxError: Unexpected token function
                            javascript.0	2019-09-04 21:57:42.255	error	^^^^^^^^
                            javascript.0	2019-09-04 21:57:42.255	error	async function login(){
                            javascript.0	2019-09-04 21:57:42.254	error	at script.js.common.System.WLAN_Ein_aus:68
                            javascript.0	2019-09-04 21:57:42.254	error	script.js.common.System.WLAN_Ein_aus compile failed:
                            javascript.0	2019-09-04 21:57:42.248	info	Start javascript script.js.common.System.WLAN_Ein_aus
                            
                            liv-in-sky 2 Replies Last reply Reply Quote 0
                            • liv-in-sky
                              liv-in-sky @dslraser last edited by

                              @dslraser 15000 -wenn das nicht hilf mach mal 30000

                              bedeutet 15 sekunden

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

                                @tempestas hast du evtl beim ändern der variablen ganz oben etwas vergessen oder zuviel gemacht - dadurch kann ein ganzer "rattenschwanz" an fehlern kommen - bitte nochmal prüfen evtl neu kopieren

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

                                  @dslraser sagte in Unifi WLAN Script:

                                  @liv-in-sky sagte in Unifi WLAN Script:

                                  abfragezyklus+15000

                                  also die 1000 auf 15000 ? (oder meinst Du 1500 ?)

                                  sorry - nicht die 1000 ändern

                                  nur ""abfragezyklus" zu "abfragezyklus+15000

                                  also nach abfragezyklus ein +15000 einfügen

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

                                    @dslraser sagte in Unifi WLAN Script:

                                    @liv-in-sky

                                    noch eine Info/Frage ?
                                    im Log taucht jetzt alle 20 Sekunden als bzw. unter info: eine meiner amazon Geräte auf, warum bzw. wofür ist das ?

                                    @liv-in-sky
                                    Ich zitiere mich mal selbst...(kommt alle 20 Sekunden)

                                    4.9.2019, 21:15:17.089	[info ]: javascript.0 script.js.Heiko.16Unifi.Unifi-Final3: amazon-45b394e84
                                    4.9.2019, 21:15:36.702	[info ]: javascript.0 script.js.Heiko.16Unifi.Unifi-Final3: amazon-45b394e84
                                    
                                    liv-in-sky 2 Replies Last reply Reply Quote 0
                                    • liv-in-sky
                                      liv-in-sky @dslraser last edited by

                                      @dslraser ja glaub ich erinnere mich - es gibt noch ein log(...) irgendwo in der getclient()

                                      mach bitte dlog(...) daraus - du hast das neue file zu schnell gedownloaded - ich habe es erst nach ein paar minuten im forum geändert - sorry

                                      abe wir testen ja noch - da kann das mal passieren

                                      was macht das ein-abmelden deines handy - ist jetzt ruhe eingerkehrt ?

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

                                        @dslraser

                                        ich werd auch einen neuen thread öffnen, wenn die fehlerbearbeitung besser ist - hab das nicht überlesen

                                        übrigens danke für's testen und für deine geduld - meine bisherigen js scripts waren eher20-zeiler

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

                                          @liv-in-sky
                                          ich teste gerade noch. Ich habe jetzt beim Handy meiner Frau mal die Netzwerkeinstellungen zurück gesetzt, aus Unifi gelöscht und es wird neu gefunden (mit anderem Namen), aber es wird nicht in den DP's mit aufgelistet.) Ich lösche jetzt mal das Script und alle DP, dann kopiere ich nochmal neu

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

                                            @liv-in-sky
                                            ist das Script weiter oben sonst okay ?

                                            da ist immer noch eins zuviel drinn

                                            let wifiDPs = [];
                                            
                                            liv-in-sky 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            870
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            13
                                            380
                                            42734
                                            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