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.
    • 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
                    • liv-in-sky
                      liv-in-sky @dslraser last edited by

                      @dslraser habe nochmal getestet - alle datenpunkte gelöscht- neue handys werden bei mir gefunden

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

                        @tempestas sagte in Unifi WLAN Script:

                        @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

                        falls du immer noch ein problem hast - ich lade morgen nochmal das orginal hoch -heute geht es nicht mehr

                        ich habe mal nachträglich darin etwas geändert - nicht das ich da einen fehler gemacht habe - muss dich leider auf morgen vertrösten

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

                          @dslraser sagte in Unifi WLAN Script:

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

                          da ist immer noch eins zuviel drinn

                          let wifiDPs = [];
                          

                          wird in nächster version bereinigt sein - habe ich bei mir schon gemacht - kommt morgen

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

                            @liv-in-sky

                            Hi,

                            der Fehlier liegt irgendwie in der login function, da meckert er ja über die syntax...

                            ich habe das Skript schon mehrfach von 0 neu reinkopiert, immer das gleiche

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

                              @tempestas bitte warte bis morgen

                              dann gibt es wieder nachschub - sorry

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

                                @tempestas
                                meinst Du das Script aus dem Beitrag hier ?

                                https://forum.iobroker.net/post/297012

                                da ist ein zuviel

                                let wifiDPs = [];
                                
                                

                                am Anfang eines davon auskommentieren.

                                Edit: ich glaube es ist korrigiert...?

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

                                  @tempestas

                                  ( @dslraser - ist kein update - selbe version wie letztes mal)

                                  hier nochmal das script

                                  • dpPrefix im script setting und javainstanz, in der das script läuft, müssen gleich sein !
                                  • evtl zusatzmodule in der js-instanz hinzufügen
                                    Image 2.png

                                  hier das file, diesmal in textdatei

                                  vorlage-unifi.txt

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

                                    @liv-in-sky
                                    Vorschlag:
                                    Nimm mal bitte hier

                                    const unifi_password = "xxxxxx!";
                                    

                                    zukünftig das Ausrufungszeichen hinter den x'en in der Vorlage weg. Wenn ich diese Stelle mit einem Doppelklick markiere und lösche, um dann meine Daten rein zu schreiben, bleibt das Ausrufungszeichen drinn stehen. Habe ich schon mehrfach übersehen und bin drauf rein gefallen. Dann konnte sich das Script natürlich nicht anmelden. Habe ich dann erst bei debug auf true gesehen.

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

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

                                      hier das file, diesmal in textdatei

                                      ich muss später mal nachsehen, wenn ich wieder am Rechner bin. Beim Import/Download der Textdatei scheint es event. zu Umlaute Fehlern zu kommen ?

                                      Screenshot_20190905-125255_Chrome.jpg

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

                                        @liv-in-sky Hey, ich hab mir das Skript mal angeschaut.

                                        Zwei Sachen sind mit aufgefallen:

                                        • Variablen die du nur einer Funktion brauchst bitte nicht als globale Variable machen^^ Ist auch zugunsten vom Arbeitsspeicher besser es dann nur in der Funktion zu machen.
                                        • Funktionen nur als async deklarieren, wenn man es auch wirklich braucht. Ansonsten werden sie parallel zum restlichen Code ausgeführt und es kann zu Fehlern kommen.

                                        unifi.txt

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

                                          @thewhobox danke dir

                                          ich schau mir das mal alles in ruhe an - heut ist ein "es klappt nix"- programmier tag 😞

                                          das mit der fehlersache klappt irgendwie nicht - wenn das script die clientdatenpunkte nicht mehr setzt und ich die javascript instanz neustarte kommen immer die promise fehler ! - werd jetzt erstmal ein video dazu anschauen

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

                                            @thewhobox

                                            hab mal etwas getestet - login scheint zu funktionieren aber es hängt dann in der getStatus - zyklus 1 ist logeintrag vor getstatus - zyklus2 wäre logeintrag vor getvoucher() zyklus 3 logeintrag vor getclients()

                                            ich habe dein login, getstatus und setwifis übernommen und die anfänge von (login und datenholen) in den anderen funktionen - hängt sich aber in getstatus() auf bzw - fehlendes resolve - got response sollte antwort von controller sein (resp)

                                            Image 5.png

                                            anschliessend instanz neustarten mit folgenden fehler

                                            Image 3.png

                                            so sieht getstatus aus

                                            //Updatet status vom Wifi
                                            //wifi: wifi object aus der konstanten wifis
                                            async function getStatus(wifi) {
                                               dlog("BIN IN STATUS");
                                               return new Promise(async (resolve, reject) => {
                                                   dlog("nur mal so");
                                                   if (!loggedIn) await login().catch((e) => reject(e));
                                                   let resp = await request.get(unifi_controller + "/api/s/default/rest/wlanconf/" + wifi.id)
                                                       .catch((e) => { dlog("getStatus reject " + e); reject(e) });
                                            
                                                   log("got response " + JSON.stringify(resp));
                                                   resp = JSON.parse(resp);
                                            
                                                   let wlanOn = resp.data[0].enabled;
                                                   log("WLAN " + wifi.name + " ist: " + (wlanOn ? "an" : "aus"));
                                            
                                                   if (resp != null && resp.meta && resp.meta.rc == "ok") {
                                                       dlog("Status erfolgreich geholt!");
                                                       dlog(resp);
                                                       let wlanOn = resp.data[0].enabled;
                                                       dlog("WLAN ist: " + (wlanOn ? "an" : "aus"));
                                                       setStateDelayed(dpPrefix + "WLANUnifi." + wifi.name, wlanOn, 200);
                                            
                                                       resolve(wlanOn);
                                                   } else {
                                                       dlog("nicht ok...")
                                                       reject(JSON.stringify(resp));
                                                   } dlog("BIN aus STATUS raus");
                                               });
                                            
                                            }
                                            

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            894
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

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